天天看点

Spring配置RMI

    传统的创建RMI服务,会涉及如下几个步骤:

    1、编写远程服务接口,该接口必须继承 java.rmi.Remote

接口,方法必须抛出 java.rmi.RemoteException 异常;

    2、编写远程接口实现类,该实现类必须继承

java.rmi.server.UnicastRemoteObject 类;

    3、运行RMI编译器(rmic),创建客户端 stub 类和服务端

skeleton 类;

    4、启动一个RMI注册表,以便驻留这些服务;

    5、在RMI注册表中注册服务;

    1、服务接口

    2、服务实现类

    3、Spring文件配置

    4、启动服务

 说明:如果使用传统的RMI来发布服务,在服务实现类中所有方法都得抛出

java.rmi.RemoteException 异常。但如果使用Spring的

org.springframework.remoting.rmi.RmiServiceExporter 将该类转化为 RMI 服务,那么实现将简单的多。

RmiServiceExporter 可以将任何一个 Spring 管理的Bean发布为一个 RMI

服务,默认情况下,RmiServiceExporter会尝试将一个RMI注册表绑定到本机的1099端口。如果在这个端口没有发现RMI注册表,RmiServiceExporter将重新启动一个注册表。如果希望将某个

RMI 注册表绑定到不同的端口或主机,可以通过 registryPort和registryHost属性指定。

三、装配RMI服务

    1、接口同上

    2、配置Spring

    3、客户端调用

    说明:Spring的

org.springframework.remoting.rmi.RmiProxyFactoryBean 是一个工厂Bean,

该Bean可以为RMI服务创建代理。