Java rmi远程方法调用基本用法解析

这篇文章主要介绍了Java rmi远程方法调用基本用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

本文主要介绍Java中的rmi的基本使用

1:项目架构

api:主要是接口的定义,URL地址,端口号

rmiconsumer:rmi服务的调用

rmiserver:rmi服务的提供者

2:pom.xnl

api的pom.xml

api com.api 1.0 rmiconsumer和rmiserver的pom.xml com.api api 1.0

功能主要是将api的引入到服务端和客户端

3:代码

api的代码

public interface RMIInterface extends Remote { String RMI_URL = "rmi://127.0.0.1:9080/RMIServer"; int PORT = 9080; Object sayHello(String name) throws remoteexception; }

rmiserver的代码

public class RMIInterfaceImpl extends UnicastRemoteObject implements RMIInterface { public RMIInterfaceImpl() throws remoteexception { } @Override public Object sayHello(String name) throws remoteexception { return "你好,你连接成功,姓名:"+name; } }

public class RMIServer { public static void main(String[] args) { try { RMIInterface rmi = new RMIInterfaceImpl(); //注册通讯端口 LocateRegistry.createRegistry(RMIInterface.PORT); //注册通讯路径 Naming.bind(RMIInterface.RMI_URL,rmi); System.out.println("rmi服务端启动成功"); }catch (Exception e){ e.printstacktrace(); } } }

rmiconsumer

public class RMIConsumer { public static void main(String[] args) { //远程调用RMI RMIInterface rmiInterface =null; try{ rmiInterface =(RMIInterface) Naming.lookup(RMIInterface.RMI_URL); Object ret = rmiInterface.sayHello("张先生"); System.out.println("测试远程调用成功,返回结果:"+ret); }catch (Exception e){ e.printstacktrace(); } } }

4:总结

接口必须继承 Remote

接口的实现类必须继承 UnicastRemoteObject

相关文章

HashMap是Java中最常用的集合类框架,也是Java语言中非常典型...
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,...
介绍 注解是JDK1.5版本开始引入的一个特性,用于对代码进行说...
介绍 LinkedList同时实现了List接口和Deque接口,也就是说它...
介绍 TreeSet和TreeMap在Java里有着相同的实现,前者仅仅是对...
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进...