小小程序员
BlogJava
|
首页
|
发新随笔
|
发新文章
|
|
|
管理
spring对java远程调用的简化(二)之Hessian,Burlap
Hessian,Burlap是Caucho提供的两种基于Http的轻量级远程服务。
Hessian像RMI那样,使用二进制消息来建立客户端和服务端之间的交流。与其他二进制远程技术(想RMI)不同的是,它可以移植到其他非Java的语言。
Burlap是一种基于Xml的远程技术,这使得他可以移植到任何可以解析XML的语言中。比起Hessian,它的可读性更强。和其他基于Xml的远程技术(如SOAP和XML-RPC)不同,它的消息结构尽可能简单,不需要额外的外部定义语言(如WSDL或IDL).
针对前面的例子,看看spring对Hessian和Burlap是怎么简化。
1.Hessian
1)客户端的配置,只需要修改bean_client.xml的配置
<
beans
>
<!--
客户端
-->
<
bean
id
="pf"
class
="org.springframework.remoting.caucho.HessianProxyFactoryBean"
>
<
property
name
="serviceUrl"
value
="http://192.168.1.8:8080/spring/pay.service"
/>
<
property
name
="serviceInterface"
value
="com.open.rmi.ex2.PerfectTimeI"
/>
</
bean
>
<
bean
id
="test"
class
="com.open.rmi.ex2.DisplayPerfectTime"
>
<
property
name
="pf"
ref
="pf"
/>
</
bean
>
</
beans
>
Hessian和Burlap是基于Http的,
http://192.168.1.8:8080/spring/pay.service
是服务端的访问地址
2)服务端的配置,这里
采用spring的mvc
先在web.xml中增加下面的配置
<
servlet
>
<
servlet-name
>
Dispatcher
</
servlet-name
>
<
servlet-class
>
org.springframework.web.servlet.DispatcherServlet
</
servlet-class
>
</
servlet
>
<
servlet-mapping
>
<
servlet-name
>
Dispatcher
</
servlet-name
>
<
url-pattern
>
*.service
</
url-pattern
>
</
servlet-mapping
>
第一节中的bean_server.xml就改配置Dispatcher-servlet.xml文件中了
<
beans
>
<
bean
id
="urlMapping"
class
="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"
>
<
property
name
="mappings"
>
<
props
>
<
prop
key
="/pay.service"
>
hessianService
</
prop
>
</
props
>
</
property
>
</
bean
>
<
bean
id
="hessianService"
class
="org.springframework.remoting.caucho.HessianServiceExporter"
>
<
property
name
="service"
ref
="pt"
/>
<
property
name
="serviceInterface"
value
="com.open.rmi.ex2.PerfectTimeI"
/>
</
bean
>
<
bean
id
="pt"
class
="com.open.rmi.ex2.PerfectTime"
/>
</
bean
>
跟第一节的相比只是更换了代理类,启动tomcat,在运行TestClient就可以看到输出结果了
2.Burlap
只要把bean_client.xml中的
HessianProxyFactoryBean
改成BurlapProxyFactoryBean,Dispatcher-servlet.xml中的
HessianServiceExporter
改成BurlapServiceExporter,就可以了。
通过上面可以看到,应用从纯RMI转换到Hessian,Burlap是多么容易啊!
发表于 2006-06-13 13:19
~小Q
阅读(1317)
评论(0)
编辑
收藏
所属分类:
『
Spring
』
IT新闻
新用户注册
刷新评论列表
标题
姓名
主页
验证码
*
内容(请不要发表任何与政治相关的内容)
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
相关文章:
图解spring mvc
Quartz的cron表达式
在spring利用javamail,quartz定时发送邮件
spring对java远程调用的简化(三)之HTTPinvoker
spring对java远程调用的简化(二)之Hessian,Burlap
spring对java远程调用的简化(一)之RMI
spring中事务的属性
事务的特点以及spring提供事务管理器的简介
ProxyFactoryBean属性介绍
spring中基础核心接口介绍
<
2006年6月
>
日
一
二
三
四
五
六
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
公告
spring-谁与争锋
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(2)
给我留言
查看公开留言
查看私人留言
随笔分类
『
eclipse
』(2)
(rss)
『
Flash
』(1)
(rss)
『
JavaScript
』(1)
(rss)
『
Maven
』(1)
(rss)
『
Spring
』(17)
(rss)
『
springside
』(1)
(rss)
『
汇编
』(4)
(rss)
『
计划
』(1)
(rss)
相册
spring
Blog
江南白衣
陈刚
(rss)
论坛
Java视野
与Java共舞
积分与排名
积分 - 26256
排名 - 453
最新评论
1. re: JavaScript中的arguments,callee,caller,call,appy
例子很容易懂,谢谢
--……
2. re: JavaScript中的arguments,callee,caller,call,appy[未登录]
已明白caller的用法,但对callee的用法还不是很明白,楼主能否在指点下
--老王
3. re: JavaScript中的arguments,callee,caller,call,appy
学习了,不过有点混乱,呵呵,看了老半天终于明白了。
--kilobug
4. re: JavaScript中的arguments,callee,caller,call,appy
好端端的东西让你弄得乱七八槽,人家是这么搞的吗?
--bjinner
5. re: Maven的eclipse插件使用的flash教程
东西是有..一点也算不上不错...
--yOan