zoukankan      html  css  js  c++  java
  • Spring 集成 RMI

    Maven

            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-remoting</artifactId>
            </dependency>

    服务端

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns:context="http://www.springframework.org/schema/context"
           xmlns:tx="http://www.springframework.org/schema/tx"
           xmlns:p="http://www.springframework.org/schema/p"
           xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context-3.2.xsd
           http://www.springframework.org/schema/tx
           http://www.springframework.org/schema/tx/spring-tx-3.2.xsd">
    
        <bean id="hello" class="org.zln.bdrisk.col.HelloImpl"/>
    
        <bean class="org.springframework.remoting.rmi.RmiServiceExporter">
            <!-- RMI服务名称,可自定义服务名称 -->
            <property name="serviceName" value="helloService" />
            <!-- 导出实体 -->
            <property name="service" ref="hello" />
            <!-- 导出接口 -->
            <property name="serviceInterface" value="org.zln.bdrisk.col.IHello" />
            <!-- spring默认使用1099端口 -->
            <property name="registryPort" value="8888" />
        </bean>
    
    
    </beans>

    客户端

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns:context="http://www.springframework.org/schema/context"
           xmlns:tx="http://www.springframework.org/schema/tx"
           xmlns:p="http://www.springframework.org/schema/p"
           xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context-3.2.xsd
           http://www.springframework.org/schema/tx
           http://www.springframework.org/schema/tx/spring-tx-3.2.xsd">
    
        <bean id="hello" class="org.springframework.remoting.rmi.RmiProxyFactoryBean">
            <property name="serviceUrl" value="rmi://localhost:8888/helloService" />
            <property name="serviceInterface" value="org.zln.bdrisk.col.IHello" />
        </bean>
    </beans>

    说明:服务端只有Spring实例化了,RMI服务对象就会注册好等着被调用,客户端上填写好服务端的地址和服务名,然后从Spring容器中获取远程对象即可

    RMI与Spring集成后,编写RMI服务类和普通的接口、实现没有区别,不再需要集成、跑出指定异常等

    RMI的限制:1、客户端和服务端都必须是Java  2、对地址、端口的依赖

  • 相关阅读:
    伪造mysql服务端实现任意读取
    客户端session安全问题(flask)
    systemd教程
    MySQL的一些常用基本命令的使用说明
    AMD、CMD、CommonJs和ES6的区别
    for in与for of的区别,以及forEach,map,some,every,filter的区别
    EcmaScript 6 十大常用特性
    单行省略号与多行省略号
    Array.prototype.slice.call()详解及转换数组的方法
    返回顶部
  • 原文地址:https://www.cnblogs.com/sherrykid/p/5917983.html
Copyright © 2011-2022 走看看