`
tom_seed
  • 浏览: 318640 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Spring RMI配置

 
阅读更多

必须的jar包包括:spring-aop、spring-context、aopalliance等;

 

服务端工程配置:

1.POJO类

package com.iaccount.network.domain;

public class FmAccount implements Serializable{
	private static final long serialVersionUID = 1379914548823145349L;

	private Long id;
	
	public FmAccount(Long id){
		this.id = id;
	}
	
	public String toString(){
		return "FmAccount:id="+id;
	}
}

 

 

2.接口

package com.iaccount.network.manager;
public interface AccountManager {

	FmAccount selectByPrimaryKey(Long id);
}

 

 

3.实现类

package com.iaccount.network.manager.impl;
@Service("accountManager")
public class AccountManagerImpl implements AccountManager {

	@Autowired
	private FmAccountMapper fmAccountMapper;
	
	@Override
	public FmAccount selectByPrimaryKey(Long id){
		return new FmAccount(id);
	}
}

 

4.Spring配置文件

<?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:p="http://www.springframework.org/schema/p"
	xmlns:context="http://www.springframework.org/schema/context"
	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">

	<context:component-scan base-package="com.iaccount.network.manager.impl" />

	<bean class="org.springframework.remoting.rmi.RmiServiceExporter">
		<property name="serviceName" value="AccountManager" />
		
		<!-- 这里使用注解方式并在上方添加了扫描路径 -->
		<!-- 若不适用注解,需要在配置文件中注册bean -->
		<property name="service" ref="accountManager" />
		<property name="serviceInterface" value="com.iaccount.network.manager.AccountManager" />
		<property name="registryPort" value="8089" /><!-- 若不指定,默认1099 -->
		<property name="servicePort" value="8088" /><!-- 如果不指定,这个端口就是随机的,没法预先在防火墙中设置 -->
	</bean>
</beans>

 

 

客户端工程配置:

1.POJO类

package com.iaccount.network.domain;

public class FmAccount implements Serializable{
	private static final long serialVersionUID = 1379914548823145349L;

	private Long id;
	
	public FmAccount(Long id){
		this.id = id;
	}
	
	public String toString(){
		return "FmAccount:id="+id;
	}
}

注意:POJO类与服务端工程中的POJO类包路径(com.iaccount.network.domain)必须一致,一般由服务端发布统一jar包供客户端工程使用即可。

 

2.接口

package com.beginning.network.rmi;
public interface AccountManager {

	FmAccount selectByPrimaryKey(Long id);
}

接口无需实现类

 

3.客户端Spring配置文件

<?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:p="http://www.springframework.org/schema/p"
	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">
	
	<bean id="accountManager" class="org.springframework.remoting.rmi.RmiProxyFactoryBean">
		<property name="serviceUrl" value="rmi://127.0.0.1:8089/AccountManager" />
		<property name="serviceInterface" value="com.beginning.network.rmi.AccountManager" />
	</bean>
</beans>

 

4.调用测试

@Controller
public class TestAction{
	
	@Autowired
	private AccountManager accountManager;
	
	/**
	 * 测试
	 */
	@RequestMapping(value = "/test", method=RequestMethod.GET)
	public void toLogin(HttpServletRequest request, ModelMap model){
		FmAccount account = accountManager.selectByPrimaryKey(1L);
		System.out.println(account);
	}
}

 

 

分享到:
评论

相关推荐

    spring rmi 多接口配置 调用

    spring rmi 多接口服务端配置 调用多接口客户端配置

    spring与rmi 整合实例 源码详解

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

    spring-rmi-example:Spring rmi 示例,取自 code.google.com,因为 code.google.com 将停止使用

    spring-rmi-示例 ...这个项目是如何在 Spring 的帮助下设置 RMI 服务器和客户端的示例。 该项目包含2个子项目: Spring RMI 示例服务器,即 Web 应用程序 ...服务器 Spring 配置如下: &lt; / bean &gt; &lt; pr

    Spring 实现远程访问详解——httpinvoker

    上文我们利用Spring rmi实现了Spring的远程访问(Spring 实现远程访问详解——rmi),本文主要讲解利用HttpInvoke实现远程访问。 Spring httpInvoker使用标准java序列化机制,通过Http暴露业务服务。如果你的参数和...

    实现JMX的spring支持,拓展了RMI远程接口。

    JMX集成到spring中,并提供了一个rmi远程连接的配置文件

    Spring 实现远程访问详解——jms和activemq

    前几章我们分别利用spring rmi、httpinvoker、httpclient、webservice技术实现不同服务器间的远程访问。本章我将通过spring jms和activemq实现单Web项目服务器间异步访问和多Web项目服务器间异步访问。 一. 简介 1. ...

    spring jar 包详解

    (2) spring-beans.jar 这个jar文件是所有应用都要用到的,它包含访问配置文件、创建和管理bean以及进行Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类。如果应用只需基本的IoC/DI支持,...

    Hessian RPC-RMI技术 整合Structs Spring Hibernate Ibatis

    Hessian RPC-RMI技术 整合Structs Spring Hibernate Ibatis 包含Hessian配置说明、服务器Server Demo、客户端Client Demo.

    Spring-Reference_zh_CN(Spring中文参考手册)

    6.8.3. 使用Spring IoC来配置AspectJ的切面 6.8.4. 在Spring应用中使用AspectJ Load-time weaving(LTW) 6.9. 其它资源 7. Spring AOP APIs 7.1. 简介 7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点实施 ...

    Spring 2.5 jar 所有开发包及完整文档及项目开发实例

    这个jar文件是所有应用都要用到的,它包含访问配置文件、创建和管理bean以及进行Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类。如果应用只需基本的IoC/DI支持,引入spring-core.jar及...

    最新最全的spring开发包

    这个jar文件是所有应用都要用到的,它包含访问配置文件、创建和管理bean以及进行Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类。如果应用只需基本的IoC/DI支持,引入spring-core.jar及...

    Spring 2.0 开发参考手册

    6.8.3. 使用Spring IoC来配置AspectJ的切面 6.8.4. 在Spring应用中使用AspectJ Load-time weaving(LTW) 6.9. 其它资源 7. Spring AOP APIs 7.1. 简介 7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    12.6.16 编写Spring和Hibernate的配置文件spring-config.xml 12.6.17 编写web.xml 12.6.18 验证示例 12.7 小结 第四篇 J2EE项目案例精选 第十三章 网上调查系统 13.1 系统概述 13.2 需求分析 13.2.1 系统用例图 ...

    Spring中文帮助文档

    6.8.3. 使用Spring IoC来配置AspectJ的切面 6.8.4. 在Spring应用中使用AspectJ加载时织入(LTW) 6.9. 更多资源 7. Spring AOP APIs 7.1. 简介 7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点运算 ...

    spring chm文档

    6.8.3. 使用Spring IoC来配置AspectJ的切面 6.8.4. 在Spring应用中使用AspectJ Load-time weaving(LTW) 6.9. 其它资源 7. Spring AOP APIs 7.1. 简介 7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点...

    Spring API

    6.8.3. 使用Spring IoC来配置AspectJ的切面 6.8.4. 在Spring应用中使用AspectJ加载时织入(LTW) 6.9. 更多资源 7. Spring AOP APIs 7.1. 简介 7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点运算 ...

    Spring攻略(第二版 中文高清版).part1

    1.2 配置Spring IoC容器中的Bean 4 1.2.1 问题 4 1.2.2 解决方案 4 1.2.3 工作原理 4 1.3 调用构造程序创建Bean 14 1.3.1 问题 14 1.3.2 解决方案 14 1.3.3 工作原理 14 1.4 解决构造程序歧义 17 ...

    spring in action英文版

    第一部分 Spring基础  第1章 开始Spring之旅  1.1 为什么使用Spring  1.1.1 J2EE开发者的一天  1.1.2 Spring的承诺  1.2 Spring是什么  1.3 开始Spring之旅  1.4 理解反向控制  1.4.1 依赖...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (3)

    12.6.16 编写Spring和Hibernate的配置文件spring-config.xml 12.6.17 编写web.xml 12.6.18 验证示例 12.7 小结 第四篇 J2EE项目案例精选 第十三章 网上调查系统 13.1 系统概述 13.2 需求分析 13.2.1 系统用例图 ...

    Spring攻略(第二版 中文高清版).part2

    1.2 配置Spring IoC容器中的Bean 4 1.2.1 问题 4 1.2.2 解决方案 4 1.2.3 工作原理 4 1.3 调用构造程序创建Bean 14 1.3.1 问题 14 1.3.2 解决方案 14 1.3.3 工作原理 14 1.4 解决构造程序歧义 17 ...

Global site tag (gtag.js) - Google Analytics