- 浏览: 3119618 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (372)
- diy (4)
- linux (19)
- 杂项 (30)
- Swing (21)
- Java2D (21)
- Java3D (5)
- JavaIO (9)
- Java通讯 (5)
- Java设计模式 (3)
- Java多媒体 (0)
- Java算法 (7)
- Spring&EJB (29)
- Javaoffice (4)
- web前端 (23)
- javascript (1)
- php基础 (1)
- eclipse (3)
- 网站相关 (3)
- Apache (4)
- seo (12)
- db (28)
- server (3)
- api (4)
- 异常 (12)
- 计算机网络词汇表 (3)
- 随想录 (52)
- 收藏 (17)
- 犹太人的智慧 (3)
- 多线程 (1)
- jfreechart (7)
- Test (1)
- SorLib (30)
- ruby on rails (1)
最新评论
-
houyutao:
二三四都是错的空字符串也被匹配,*应该改成+
Java中判断字符串是否为数字的五种方法 -
mingyun:
但是 java.util.ArrayList 实现了 remo ...
java.lang.UnsupportedOperationException 解决方案 -
mingyun:
1.因为 Arrays.asList 返回的是 Arrays内 ...
java.lang.UnsupportedOperationException 解决方案 -
leolu007:
用java8新特性String testStr = " ...
java.lang.UnsupportedOperationException 解决方案 -
zhaohuaxishiwzw:
我之前所在的项目就是日本一家证券公司的项目。完全使用的是j2e ...
抛弃EJB(EJB2.0,EJB3.0,EJB4.0)
Spring使用RMI非常简单,甚至比直接使用RMI还简单。
第一:首先定义接口:
第二:实现接口
第三:在Spring配置文件中配置RMI服务
第四:启动RMI服务
第五:访问服务
第六:源码下载
http://www.zakisoft.com/?p=118
第一:首先定义接口:
import java.rmi.Remote; import java.rmi.RemoteException; import com.zakisoft.test.rmi.vo.User; public interface RmiUserService extends Remote{ User login(String username, String password) throws RemoteException; void create(String username, String password) throws RemoteException; }
import java.io.Serializable; public class User implements Serializable { private static final long serialVersionUID = -3017748605531466285L; private String username; private String password; public User(String username, String password) { this.username = username; this.password = password; } public String getUsername() { return username; } public String getPassword() { return password; } }
第二:实现接口
import java.net.MalformedURLException; import java.rmi.AlreadyBoundException; import java.rmi.Naming; import java.rmi.RemoteException; import java.rmi.registry.LocateRegistry; import java.rmi.server.UnicastRemoteObject; import com.zakisoft.test.rmi.server.UserService; import com.zakisoft.test.rmi.server.UserServiceImpl; import com.zakisoft.test.rmi.vo.User; public class RmiUserServiceImpl extends UnicastRemoteObject implements RmiUserService { UserService service = new UserServiceImpl(); public RmiUserServiceImpl() throws RemoteException { } private static final long serialVersionUID = -7138363701504022490L; public void create(String username, String password) throws RemoteException { service.create(username, password); } public User login(String username, String password) throws RemoteException { return service.login(username, password); } public static void main(String[] args) throws RemoteException, MalformedURLException, AlreadyBoundException { LocateRegistry.createRegistry(1099); Naming.bind("rmi://localhost:1099/UserService", new RmiUserServiceImpl()); System.out.print("Service start"); } }
第三:在Spring配置文件中配置RMI服务
<bean id="userService" class="com.zakisoft.test.rmi.server.UserServiceImpl"></bean> <bean id="rmiService" class="org.springframework.remoting.rmi.RmiServiceExporter"> <property name="serviceName" value="UserService"/> <property name="service" ref="userService"/> <property name="serviceInterface" value="com.zakisoft.test.rmi.server.UserService"/> <property name="registryPort" value="1099"/> </bean>
第四:启动RMI服务
public class SpringStartRmi { public static void main(String[] args) { new ClassPathXmlApplicationContext("zconfig.xml"); } }
第五:访问服务
import org.springframework.remoting.rmi.RmiProxyFactoryBean; import com.zakisoft.test.rmi.server.UserService; public class ClientSpringRmi { public static void main(String[] args) { RmiProxyFactoryBean factory = new RmiProxyFactoryBean(); factory.setServiceInterface(UserService.class); factory.setServiceUrl("rmi://localhost:1099/UserService"); factory.afterPropertiesSet(); UserService userService = (UserService)factory.getObject(); userService.create("test", "test"); System.out.println(userService.login("new_user_01", "new_password_01")); //userService.login("test", "test"); } }
第六:源码下载
http://www.zakisoft.com/?p=118
评论
1 楼
aijnecJay
2012-09-19
你这个例子举得把不用spring和用spring的混到一块了。。
第一步和第二步的接口和实现是不用spring的情况。
直接用第二步的main方法启动服务。
后面配了spring,直接用自己的接口和实现类注册进RmiServiceExporter即可。
第一步和第二步的接口和实现是不用spring的情况。
直接用第二步的main方法启动服务。
后面配了spring,直接用自己的接口和实现类注册进RmiServiceExporter即可。
发表评论
-
Spring,Hibernate,ResultSet和事务
2012-03-21 15:30 2968今天研究了一天的关于Spring,Hibernate,Resu ... -
Spring 注入 log4j
2012-01-12 17:21 6442如果打算将Log4j注入Spring的applicationC ... -
Spring DaoMethodAfterAdvice使用例子
2011-02-10 19:08 1307该拦截器会在bean的方法执行后被执行 import j ... -
Spring MethodBeforeAdvice使用例子
2011-02-10 19:05 14413MethodBeforeAdvice该拦截器会在调用dean的 ... -
Spring ThrowsAdvice使用例子
2011-02-10 19:01 9480ThrowsAdvice用于拦截异常 import ja ... -
Spring 消息注册发布的例子
2011-01-19 16:26 1473消息注册发布模式是我们常用的设计模式,Spring也实现了这个 ... -
FileSystemResource 参数为什么必须是绝对路径
2011-01-19 09:22 4594在使用FileSystemResource时,发现FileSy ... -
Spring的价值
2010-11-08 09:59 16061. Spring是一个非侵入性(non-invasive)框 ... -
Spring事务管理例子
2010-09-26 17:18 5884关于spring事务管理以及异常处理的帖子,本论坛争论颇多,各 ... -
Spring和iBatis整合的例子
2010-09-26 16:43 11067OR Mapping的思想相信不用多说大家都明白了,在这里我选 ... -
抛弃EJB(EJB2.0,EJB3.0,EJB4.0)
2010-09-25 17:28 10015关键词:EJB,JEEE,Spring,OO, ... -
J2EE架构图
2010-09-25 11:19 4774以下是J2EE架构图: -
J2EE的核心API与组件(没了EJB,J2EE还剩什么呢)
2010-09-25 10:56 1774J2EE是一种利用Java 2平台来简化企业解决方案的开发、部 ... -
Spring中加载xml配置文件的六种方式
2010-08-31 15:05 41476因为目前正在从事一个项目,项目中一个需求就是所有的功能都是插件 ... -
Spring框架的设计理念与设计模式(9)-策略模式
2010-08-31 13:34 2556关键词:Spring,设计模式,策略模式 上一章:Spring ... -
Spring框架的设计理念与设计模式(8)-代理模式
2010-08-31 13:32 2399关键词:Spring,设计模式,工厂模式,代理模式 上一章:S ... -
Spring框架的设计理念与设计模式(7)-Spring中AOP特性与实现
2010-08-31 13:26 3401关键词:Spring,AOP,Proxy,代理,拦截器 上一章 ... -
Spring框架的设计理念与设计模式(6)-Ioc容器及BeanFactory工厂
2010-08-31 13:20 4787关键词:Spring,Ioc,Bean,Context,Bea ... -
Spring框架的设计理念与设计模式(5)-Core组件
2010-08-31 13:10 2182关键词:Spring,Core,组件, ... -
Spring框架的设计理念与设计模式(4)-Context组件
2010-08-31 13:08 3333关键词:Context,组件,Spri ...
相关推荐
具体到这个压缩包“springRMI”,我们可以推测它可能包含了以下几个部分: 1. **配置文件**:如`applicationContext.xml`,其中定义了Spring容器中的Bean,可能包括RMI服务的接口和实现。 2. **远程接口**:`.java`...
1.2 Spring的RMI支持:Spring通过`org.springframework.remoting.rmi.RmiServiceExporter`和`RmiProxyFactoryBean`简化了RMI的使用。`RmiServiceExporter`用于发布服务,而`RmiProxyFactoryBean`则用于创建RMI服务的...
- **安全考虑**:在Web环境中,必须考虑到安全性问题,例如使用Spring Security来保护RMI接口,防止未经授权的访问。 - **负载均衡**:在大型分布式系统中,可能有多台服务器提供RMI服务。Spring可以配合负载均衡...
spring 与rmi 的整合 1.首先编写接口 interface : 这里的接口要继承Remote, 它是一个标识接口 2.编写实现类 3.编写main方法用于启动 service 4 配置spring文件 编写客户端测试类
在Spring的XML配置文件中,我们创建一个`<bean>`来表示远程服务,并使用`<rmi:export>`标签将该服务暴露为RMI服务: ```xml <rmi:registry id="registry" port="1099" /> <rmi:service id=...
在这个"Spring RMI小例子"中,我们将深入理解Spring如何简化RMI的使用,以及如何通过它实现跨网络的交互。 首先,RMI允许Java对象在不同的JVM之间进行通信,仿佛它们都在同一个进程中运行。Spring通过提供自动注册...
- **配置RMI服务**:在Spring的XML配置文件中,使用`<bean>`标签定义RMI服务,指定远程接口、实现类以及RMI服务的端口。 - **注册RMI服务**:使用`<bean>`标签的`lookup-by-name`属性,将服务注册到RMI注册表。 - **...
在这个"SpringRMI小例子"中,我们将深入探讨如何利用Spring框架来增强RMI的功能,使其更加灵活和易于管理。 首先,我们需要理解Spring框架在RMI中的角色。Spring提供了对RMI的高级抽象,通过其`org.springframework...
本压缩包提供了两个Java工程示例,帮助开发者了解如何在Spring环境中集成并使用RMI。 首先,让我们理解RMI的基本概念。RMI是Java提供的一种机制,使得一个Java对象能够调用运行在不同JVM上的另一个Java对象的方法。...
### Spring RMI 使用详解 #### 一、Spring RMI 概述 Spring RMI 是 Spring 框架中用于支持远程方法调用(Remote Method Invocation)的功能模块。通过 Spring RMI, 开发者能够更加简便地搭建和管理远程服务。传统上...
6. **源码分析**:在提供的压缩包文件`SpringRMI`中,可能包含了上述所有步骤的代码示例。通过阅读这些源码,你可以深入理解Spring RMI的工作原理,包括服务暴露、注册、代理创建等。 7. **工具使用**:在开发过程...
Spring通过提供RMI集成,简化了RMI服务的创建和调用。以下是一些关键点: 1. **服务接口定义**:首先,你需要定义一个远程服务接口,这个接口将包含你希望在远程进程中执行的方法。 2. **服务实现**:接着,创建该...
5. **Spring配置**:在Spring的配置文件中,可以使用`<bean>`标签定义RMI服务,并使用`<lookup-method>`标签来查找并注入远程对象。 ```xml <bean id="myServiceExporter" class="org.springframework.remoting...
为了避免业务逻辑重新开发,顾使用spring rmi,把所有的bean作为rmi服务暴漏出来,在客户端只需要把项目依赖过来就ok,或者把以前的接口导入过来。 参考文档:...
当我们谈论“RMI与Spring整合实例”时,我们通常是指将RMI技术与Spring框架结合使用,以便构建可扩展的、分布式的Java应用程序。下面将详细解释这两个概念以及如何将它们整合在一起。 1. RMI基础: - RMI的核心...
Java Spring 框架与 Remote Method Invocation (RMI) 的结合使用是构建分布式应用程序的一种常见方式。本项目提供了一个入门级的源代码示例,帮助开发者理解如何在 Spring 环境下集成 RMI 技术。以下是关于这两个...
Java Spring与RMI(Remote Method Invocation)的整合是企业级应用中常见的远程服务交互方式。Spring框架提供了对RMI的支持,使得开发者能够方便地在分布式环境中进行服务的调用。这个压缩包文件“Spring+RMI”很...
在本文中,我们将深入探讨Spring框架如何集成RMI,以及如何创建和使用RMI客户端。 首先,让我们了解RMI的基本概念。RMI是一种机制,它允许一个对象在一台计算机上执行的方法可以在另一台计算机上执行,就好像这些...
3. **配置Spring容器**:在Spring的XML配置文件中,你需要声明一个`<bean>`来表示远程服务,使用`<rmi:export>`或`<bean class="org.springframework.remoting.rmi.RmiServiceExporter">`标签将服务导出为RMI。...
在IT行业中,Spring框架是Java开发中的一个基石,它提供了丰富的功能来简化应用程序的构建,包括远程过程调用(Remote Method Invocation,RMI)服务。本文将深入探讨"spring rmi 改造"这一主题,主要关注如何在原有...