您的位置:首页 > 编程语言 > Java开发

远程访问对象java实现

2016-04-12 16:48 537 查看
服务端:

定义远程接口:

package com.my.rmi;

import java.rmi.Remote;
import java.rmi.RemoteException;

public interface Impl extends Remote{
public String name() throws RemoteException;
}


实现接口:

package com.my.rmi;

import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;

public class RmtImpl extends UnicastRemoteObject implements Impl{

private int i;

public RmtImpl(int i) throws RemoteException {
super();
this.i = i;
}
public RmtImpl() throws RemoteException{
}
public String name() throws RemoteException{
return "test"+20*i;
}
}


注册远程对象:

package com.my.rmi;

import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;

public class rmi {
public static void main(String[] args) {
Registry r = null ;
try {
RmtImpl s = new RmtImpl(25);
r = LocateRegistry.createRegistry(50000);
//也可以用它注册远程服务
//Naming.rebind("rmi://192.168.6.66:50000/mytest", s);
r.rebind("mytest", s);
} catch (Exception e1) {
e1.printStackTrace();
}
}
}


客户端:

package com.my.rmi;

import java.rmi.Naming;

public class ClientRMI {
public static void main(String[] args) {
try {
Impl oo = (Impl)Naming.lookup("rmi://192.168.6.66:50000/mytest");
System.out.println(oo.name());
} catch (Exception e) {
e.printStackTrace();
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: