eclipse中RMI编程环境的搭建与编程示例

来源:互联网 发布:微电影软件 编辑:程序博客网 时间:2024/06/05 17:16

在eclipse中进行远程方法调用(Remote Method Invocation RMI)编程

一、安装RMI插件

1、首先下载Eclipse的RMI开发插件 下载地址:http://www.genady.net/rmi/v20/downloads.html

                                                                                    或http://download.csdn.net/detail/hhxin635612026/5361821

2、解压缩将net.genady.rmi_2.5.0文件夹下的两个文件拷贝到D:\eclipse(我的eclips的安装文件夹),覆盖同名的两个文件夹

3、重启Eclipse快捷键栏会出现

4、插件安装完毕

二、rmi编程示例 (注:这里给出的是李华飚的《java中间件技术及其应用开发》P143的示例程序)

1、创建RMI项目,并建rmiTest包,一个接口RMITest1I,两个类分别是RMITest1,DisplayPerfectTime,下面给出源代码

package rmiTest;import java.rmi.Remote;import java.rmi.RemoteException;public interface RMITest1I extends Remote {long getPerfectTime() throws RemoteException;}
package rmiTest;import java.rmi.*;import java.rmi.server.*;public class RMITest1 extends UnicastRemoteObject implements RMITest1I {protected RMITest1() throws RemoteException {super();}public long getPerfectTime() throws RemoteException {return System.currentTimeMillis();}public static void main(String[] args) {try {/* * 创建远程对象的一个或多个实例,下面是RMITest1对象 */System.out.println("开始 RMI Server ...");RMITest1 rt = new RMITest1();System.out.println("将实例注册到专有的URL ");Naming.rebind("//localhost/RMITest1", rt);System.out.println("Bind OK");System.out.println("等待RMI客户端调用...");} catch (Exception e) {System.out.println("错误: " + e);}}}
package rmiTest;import java.rmi.Naming;public class DisplayPerfectTime {public DisplayPerfectTime() {super();// TODO Auto-generated constructor stub}public static void main(String[] args) {try {RMITest1I t = (RMITest1I) Naming.lookup("//localhost/RMITest1");for (int i = 0; i < 10; i++) {System.out.println("PerfectTime:" + t.getPerfectTime());}} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

2、进入cmd,如图

键入程序所在位置后对接口进行编译,如图

 

3、右键项目,打开运行配置窗口

4、打开后找到RMI VM Properties对java.security.policy与java.rmi.server.codebase进行配置,如下如所示


其中java.security.policy 配成D:\Java\jdk1.7.0_03\jre\lib\security\java.security  (注:这里给出的路径是我电脑的jdk的安装路径)

java.rmi.server.codebase 配到本程序的bin目录下

5、然后对服务端RMITest1类,在RMI Application方式下运行

6、对客户端DisplayPerfectTime类,像平常本地程序运行即可,即java application方式

 

---欢迎转载---