浏览 917 次
锁定老帖子 主题:RMI的基本使用
该帖已经被评为隐藏帖
|
|
---|---|
作者 | 正文 |
发表时间:2009-02-24
1.建立server包:用于保存RMI的服务类 2.建立interfaces包:用于保存所有的抽象接口 3.建立impls包:用于保存服务器端抽象接口的具体实现类 4.建立client包:保存客户端相关类 注意事项: 1.作为RMI的抽象接口必须throws RemoteException 2.RMI抽象接口的实现类必须要有公用的构造方法、实现类必须extends UnicastRemoteObject,并且构造方法必须throws RemoteException public class RemoteServerImp extends UnicastRemoteObject implements OperatorRmiInterface { public RemoteServerImp() throws RemoteException { super(); // TODO Auto-generated constructor stub } //....................... //服务类 try { LocateRegistry.createRegistry(8888); //服务器端注册服务端口 RemoteServerImp simp = new RemoteServerImp();//实例化一个服务类 Naming.rebind("//localhost:8888/SIMPLE-SERVER", simp);//将服务类和URL绑定到命名空间 System.out.println("RMI Server Started"); } catch (MalformedURLException e) { e.printStackTrace(); } catch (RemoteException e) { // TODO Auto-generated catch block e.printStackTrace(); } //客户端 String url = "//localhost:8888/SIMPLE-SERVER"; try { OperatorRmiInterface in = (OperatorRmiInterface)Naming.lookup(url);//在命名空间上查找服务URL System.out.println("call remote program 1+2="+in.sum(1, 2));//调用远程服务端的方法 } catch (MalformedURLException e) { e.printStackTrace(); } catch (RemoteException e) { e.printStackTrace(); } catch (NotBoundException e) { e.printStackTrace(); } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |