`

Spring RMI 实例

 
阅读更多
首先是服务端:
接口和实现

public interface ServerRmiI {

public String sayHi(String name);
}

public class ServerRmiImpl implements ServerRmiI{

public String sayHi(String name) {
  // TODO Auto-generated method stub
  return "Hi,"+name;
}

}
配置:
<?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"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
    http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd"
    default-autowire="byName" default-lazy-init="true"> 
     <bean name="rmiserver" class="com.server.ServerRmiImpl"/>
     <bean name="serverTest" class="org.springframework.remoting.rmi.RmiServiceExporter">
       <property name="service" ref="rmiserver"/>
       <property name="serviceName" value="serverRmiTest"/>
       <property name="serviceInterface" value="com.server.ServerRmiI"/>
       <property name="registryPort" value="1021"/>
     </bean>
</beans>

启动:
public static void main(String[] args) {
  ApplicationContext context = new ClassPathXmlApplicationContext("classpath:applicationContext-bean.xml");
        context.getBean("serverTest");
}
看见如下信息就代表成功了:
信息: Binding service 'serverRmiTest' to RMI registry: RegistryImpl[UnicastServerRef [liveRef: [endpoint:[yourhost:1021](local),objID:[0:0:0, 0]]]]
客户端:
配置:
<?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"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
    http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd"
    default-autowire="byName" default-lazy-init="true"> 
     <bean name="clentrmi" class="org.springframework.remoting.rmi.RmiProxyFactoryBean">
     <property name="serviceUrl" value="rmi://yourhost:1021/serverRmiTest"/>
     <property name="serviceInterface" value="com.server.ServerRmiI"/>
     </bean>
</beans>

测试类:
public static void main(String[] args) {
  ApplicationContext context = new ClassPathXmlApplicationContext("classpath:applicationContext-bean.xml");
        ServerRmiI rmiI = (ServerRmiI) context.getBean("clentrmi");
        System.out.println(rmiI.sayHi("rmi"));
}
打印:Hi,rmi
分享到:
评论

相关推荐

    spring RMI 实例

    Spring RMI(Remote Method Invocation)实例是一个用于演示如何在Spring框架中使用RMI技术的简单应用。RMI是Java提供的一种远程方法调用机制,它允许一个Java对象调用位于另一台计算机上的对象的方法,实现了分布式...

    Spring(RMI)实例

    通过分析和实践这个Spring RMI实例,开发者可以学习到如何在Spring环境中设置和使用RMI,这对于理解和掌握分布式系统的设计原则,尤其是Java环境下的分布式服务实现非常有帮助。同时,这也是一个很好的起点,可以...

    rmi与spring整合实例

    当我们谈论“RMI与Spring整合实例”时,我们通常是指将RMI技术与Spring框架结合使用,以便构建可扩展的、分布式的Java应用程序。下面将详细解释这两个概念以及如何将它们整合在一起。 1. RMI基础: - RMI的核心...

    Spring RMI

    - **负载均衡**:通过RMI注册表,可以将请求分发到多个服务实例,提高系统可用性。 ### 6. Spring Boot与RMI Spring Boot简化了Spring应用程序的启动和配置,包括RMI服务。在Spring Boot应用中,可以通过配置文件...

    java rmi spring 使用实例

    java rmi spring 使用实例,内涵服务端和客户端的源代码,测试可用。

    spring与rmi 整合实例 源码详解

    spring 与rmi 的整合 1.首先编写接口 interface : 这里的接口要继承Remote, 它是一个标识接口 2.编写实现类 3.编写main方法用于启动 service 4 配置spring文件 编写客户端测试类

    spring rmi 源码

    总的来说,这个项目提供了学习和理解Spring RMI集成的一个实例。通过分析服务端和客户端的源码,我们可以深入理解如何在Spring框架下实现和使用RMI远程调用,这对于任何希望在分布式系统中利用Spring的开发者来说都...

    spring RMI 实用分享

    Spring RMI(Remote Method ...创建RMI客户端也很简单,使用`RmiProxyFactoryBean`来创建远程服务的代理实例。 1. **配置RMI客户端**:在Spring配置文件中,使用`RmiProxyFactoryBean`创建远程服务代理。 ```xml ...

    spring和RMI分布式整合源码

    具体到这个压缩包“springRMI”,我们可以推测它可能包含了以下几个部分: 1. **配置文件**:如`applicationContext.xml`,其中定义了Spring容器中的Bean,可能包括RMI服务的接口和实现。 2. **远程接口**:`.java`...

    java项目使用spring rmi所涉及到的包

    在Java项目中,Spring RMI(Remote Method Invocation)是一种整合远程方法调用功能与Spring框架的方式,它使得在分布式环境中管理对象和服务变得更加便捷。本文将深入探讨Spring RMI涉及的包,以及如何在项目中使用...

    rmi实例(Spring整合)

    Spring框架作为Java企业级应用的基石,它提供了与RMI集成的能力,使得开发者可以方便地利用RMI来构建高可扩展性的系统。本文将深入探讨Spring整合RMI的相关知识点。 首先,理解RMI的基本概念是关键。RMI允许一个...

    spring RMI 远程接口调用

    Spring RMI(Remote Method Invocation)远程接口调用是Spring框架提供的一个特性,它允许你在分布式环境中调用对象的方法,使得应用程序能够跨越网络边界操作远程对象。这个技术在大型企业级应用中尤其有用,因为它...

    spring rmi 简单应用

    Spring RMI(Remote Method Invocation)简单应用主要涉及的是在Java中使用Spring框架来实现远程方法调用的技术。RMI是Java提供的一种分布式计算能力,它允许一个Java对象调用网络另一端的Java对象的方法,实现了...

    java spring+rmi 的远程调用例子

    Java Spring与RMI(Remote Method Invocation)的整合是企业级应用中常见的远程服务交互方式。Spring框架提供了对RMI的支持,使得开发者能够方便地在分布式环境中进行服务的调用。这个压缩包文件“Spring+RMI”很...

    spring rmi应用

    在Spring中,我们可以使用`@Remote`注解来标记一个接口,表明这个接口的实例将在远程服务器上运行。然后,通过Spring的RMI支持,服务器端可以创建这个接口的实现,并使用`Registry`注册该实现。 描述中的博文链接...

    spring中使用RMI

    在Spring框架中,远程方法调用(Remote Method Invocation, RMI)是一种使应用程序能够通过网络调用另一个JVM上的对象方法的技术。RMI是Java平台的一部分,它允许开发者创建分布式应用,使得对象可以像调用本地方法...

    spring+rmi实现非本地部署

    在IT行业中,Spring框架是Java领域最常用的轻量级应用框架之一,而RMI(Remote Method Invocation)则是Java提供的一种远程方法调用机制,用于构建分布式应用程序。将Spring与RMI结合,可以实现非本地部署的服务,...

    spring整合RMI

    - 在Spring配置文件中,你需要定义一个`&lt;bean&gt;`,该bean实例化你的远程实现类,并使用`rmiRegistration`属性将其注册为RMI服务。例如: ```xml &lt;!-- 配置依赖注入 --&gt; &lt;bean id="rmiExporter" class="org....

    Spring+EhCache缓存实例

    **Spring+EhCache缓存实例详解** 在现代的Java企业级应用中,缓存技术扮演着至关重要的角色,它能够显著提升系统性能,减少数据库负载。Spring框架与EhCache的结合,为开发者提供了一种高效、易用的缓存解决方案。...

Global site tag (gtag.js) - Google Analytics