怎样编写一个java程序,怎么创建一个java

  怎样编写一个java程序,怎么创建一个java

  RMI 指的是远程方法调用 (Remote Method Invocation)。它是一种机制,使一个Java虚拟机中的对象能够调用另一个Java虚拟机中的对象的方法。任何可以用此方法调用的对象都必须实现远程接口。

  如何解决写爬虫IP受阻的问题?立即使用。

  当这样的对象被调用时,其参数被“封送”,并从本地虚拟机发送到远程虚拟机(其参数为“解封”)。当该方法终止时,来自远程机器的结果将被分组并发送到调用者的虚拟机。如果方法调用导致异常被抛出,该异常将被指示给调用者。

  当提供远程访问时,我们首先需要定义远程可以访问什么。在Java中,定义这种接口需要实现远程接口。

  公共接口业务延伸到远程{

  公共字符串echo(String msg)引发RemoteException

  }定义好接口后,这些功能需要我们自己在服务器端实现。因此,声明一个类来实现我们提供的接口。

  公共类BusinessImpl实现业务{

  @覆盖

  公共字符串echo(String msg)引发RemoteException {

  如果(退出)。equalsIgnoreCase(消息)){

  System.out.println(服务器将关闭);

  system . exit(0);

  }

  System.out.println(来自客户端的消息: msg );

  返回“服务器响应:”消息;

  }

  }实现这个方法后,有一个如何运行的问题。既然是远程访问,就必须有端口号和实例,所以我们也需要注册我们的代码。

  公共类服务器{

  public static final String SERVER _ REGISTER _ NAME= BusineeDemo ;

  公共静态void main(String[] args)引发RemoteException {

  int port=2016

  business business=new business impl();

  unicastremoteobject . export object(业务,端口);

  registry registry=locate registry . create registry(1099);

  registry . rebind(SERVER _ REGISTER _ NAME,business);

  }

  }这里有两个Java的类:UnicastRemoteObject和LocateRegistry

  一个界面:注册表

  注册表接口(Registry interface):为简单的远程对象提供一个远程接口,用于存储和获取远程对象的引用,这些引用是通过字符串类型的任意变量名获取的。bind、unbind和rebind方法用于更改这些注册的名称,lookup和list方法用于查询当前绑定的对象。

  UnicastRemoteObject类:用于导出远程对象。

  LocateRegistry类:是一个辅助类程序,用来获取远程调用对象的引用,主要是在特定的IP上构建一个远程对象,接受来自特定端口的回调。

  简单的服务端完成了,现在来看客户端:

  客户端代码要简单得多。正如我们前面提到的,我们可以通过Registry的查找方法获得当前绑定的服务,所以自然地,我们必须首先获得这个Registry。

  公共类客户端{

  公共静态void main(String[] args)引发RemoteException,NotBoundException {

  //注册表Registry=locate Registry . get Registry( localhost );

  registry registry=locate registry . get registry( localhost ,1099);

  Business Business=(Business)registry . lookup(Server。服务器_注册_名称);

  system . out . println(business . echo( Hello Server ));

  }

  }以上是如何用java写一个rmi的细节。更多请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: