Java RMI 简单示例
2016-03-21 15:26
531 查看
一、创建远程服务
1、创建 Remote 接口,MyRemote.java
2、实现 Remote,MyRemoteImpl.java
3、编译。在以上 java 文件所在目录,按住 shift 键,右键,选择「在此处打开命令窗口」,执行
4、用 rmic 产生 stub。
5、启动 RMI registry。
6、启动远程服务。另外打开一个命令窗口,执行
二、客户端调用远程方法
1、把第一步的 MyRemote.class 和 MyRemoteImpl_Stub.class 拷贝到客户端文件所在目录。
2、编写客户端代码 MyRemoteClient.java。
3、编译
4、运行客户端
参考资料:
1. Kathy Sierra. Bert Bates. 《Head First Java》中文版
1、创建 Remote 接口,MyRemote.java
import java.rmi.*; public interface MyRemote extends Remote{ public String sayHello() throws RemoteException; }
2、实现 Remote,MyRemoteImpl.java
import java.rmi.*; import java.rmi.server.*; public class MyRemoteImpl extends UnicastRemoteObject implements MyRemote{ public String sayHello(){ return "Server says,'Hey'"; } public MyRemoteImpl() throws RemoteException{} public static void main(String[] args){ try{ MyRemote service = new MyRemoteImpl(); Naming.rebind("rmi://localhost:1099/Hello",service); }catch(Exception ex) { ex.printStackTrace(); } } }
3、编译。在以上 java 文件所在目录,按住 shift 键,右键,选择「在此处打开命令窗口」,执行
javac *.java
4、用 rmic 产生 stub。
rmic MyRemoteImpl
5、启动 RMI registry。
rmiregistry
6、启动远程服务。另外打开一个命令窗口,执行
java MyRemoteImpl
二、客户端调用远程方法
1、把第一步的 MyRemote.class 和 MyRemoteImpl_Stub.class 拷贝到客户端文件所在目录。
2、编写客户端代码 MyRemoteClient.java。
import java.rmi.*; public class MyRemoteClient { public static void main(String[] args) { new MyRemoteClient().go(); } public void go() { try { MyRemote service=(MyRemote)Naming.lookup("rmi://localhost:1099/Hello"); String s=service.sayHello(); System.out.println(s); } catch(Exception ex) { ex.printStackTrace(); } } }
3、编译
javac *.java
4、运行客户端
java MyRemoteClient
参考资料:
1. Kathy Sierra. Bert Bates. 《Head First Java》中文版
相关文章推荐
- 手把手教你整合 SpringMvc+Spring+MyBatis+Maven
- Struts 2 + Hibernate + Spring 整合要点
- Struts2 入门实例
- java 学习笔记
- Spring MVC 实践笔记
- Java数据库
- 关于java中Double类型的运算精度问题(转)
- 数组复制引用问题
- java基础经典练习题
- java线程研究
- 搭建SSH框架遇到的struts.xml找不到spring定义的bean的错误(配置文件的路径问题)
- Java中的时间表示和日期的转换
- Java String.replace()方法
- 圣思源-张龙-Java SE 第五讲(运算符续 Operator cont.).pdf
- java.net.ConnectException: Connection timed out
- 在java中进行bing翻译 引用别人的jar包
- 关于java 继承和简单多态
- Windows Myeclipse 10 安装 Perl 插件
- 使用Gradle构建Java项目
- 使用Gradle构建Java项目