代码演示 服务端代码
import java.rmi.Remote; import java.rmi.RemoteException; public interface IHello extends Remote{ public String helloworld() throws RemoteException; public String sayHelloToSomeBoy(String name) throws RemoteException; } import java.rmi.RemoteException; import java.rmi.server.UnicastRemoteObject; public class HelloImpl extends UnicastRemoteObject implements IHello{ private static final long serialVersionUID = 1L; public HelloImpl() throws RemoteException { } @Override public String helloworld() throws RemoteException { return "hello world"; } @Override public String sayHelloToSomeBoy(String name) throws RemoteException { // TODO Auto-generated method stub return "你好 !" + name; } }启动服务
import java.rmi.Naming; import java.rmi.registry.LocateRegistry; public class HelloServer { public static void main(String[] args) { try { IHello afanRmi = new HelloImpl(); LocateRegistry.createRegistry(8090); Naming.bind("rmi://localhost:8090/test",afanRmi); } catch (Exception e) { System.out.println("RMI 服务启动有问题!!!"+ e.getMessage()); } } }客户端代码
import java.rmi.Naming; public class HelloClient { public static void main(String[] args) { try { IHello ihello = (IHello)Naming.lookup("rmi://192.168.101.168:8090/test"); System.out.println(ihello.helloworld()); System.out.println(ihello.sayHelloToSomeBoy("java ")); }catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }