Hessianspring整合.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Hessian spring 整合2012-05-03 21:12:27 分类: 系统运维 简介 相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议(Binary),因为采用的是二进制协议, 所以它很适合于发送二进制数据。Hessian通常通过Web应用来提供服务,因此非常类似于WebService。 只是它不使用SOAP协议。 Hessian通过Servlet提供远程服务。需要将匹配某个模式的请求映射到Hessian服务。 Spring的DispatcherServlet可以完成该功能,DispatcherServlet可将匹配模式的请求转发到Hessian服务。 Hessian的server端提供一个servlet基类, 用来处理发送的请求,而Hessian的这个远程过程调用, 完全使用动态代理来实现的,,推荐采用面向接口编程, 因此,Hessian服务建议通过接口暴露。 Hessian处理过程示意图: 客户端——序列化写到输出流——远程方法(服务器端)——序列化写到输出流 ——客户端读取输入流——输出结果 环境搭建 Hessian的下载和安装请按如下步骤进行: (1)登/hessian/下载Hessian。 (2)把Hessian相应的Jar包放到Web应用下,所有的jar文件都应该放在WEB-INF/lib下,该文件也不例外。 两种方式 纯Hessian 这种方式主要是适用于工程中没有适用像spring框架的情况下,好处是配置方便, 但是当内容多的情况下,配置的内容很多。 下面我就把我在做实例的一些相关步骤描述如下: 1:把Hessian相应jar包放入至工程中。 2:由于Hessian是采用面向接口编程的,所以编写一个接口,因为客户端仅仅需要接口,而无须真实的实现类。 package jzh.demo; public interface IHello { String sayHello(); } 3:编写一个类实现这个接口。 package jzh.demo.impl; import jzh.demo.IHello; import com.caucho.hessian.server.HessianServlet; public class Hello extends HessianServlet implements IHello { public String sayHello() { return Hello world; } } 4:web.xml的详细配置 servlet servlet-nameHello/servlet-name servlet-classcom.caucho.hessian.server.HessianServlet/servlet-class init-param param-namehome-class/param-name param-valuejzh.demo.imple.Hello/param-value /init-param init-param param-namehome-api/param-name param-valuejzh.demo.IHello/param-value /init-param load-on-startup1/load-on-startup /servlet servlet-mapping servlet-nameHello/servlet-name url-pattern/Hello/url-pattern /servlet-mapping 5:客户端远程调用服务器端提供的接口,利用的就是Hessian的HessianProxyFactory,来实现远程代理。 1) 把服务器端的生成的jar包,放入工程中。 2) 相应的片段程序如下: String url = 85:8080/Hessian/Hello; HessianProxyFactory factory = new HessianProxyFactory(); try { IHello hello =(IHello)factory.create(IHello.class,url); System.out.println(hello.sayHello()); } catch (MalformedURLException e) { e.printStackTrace(); } 6:功能完成。 Hessian与Spring整合 相比上一种方式,这个方式就有点麻烦了。Hessian通过Servlet提供远程服务。 需要将匹配某个模式的请求映射到Hessian服务。Spring的DispatcherServlet可以完成该功能, DispatcherSer

文档评论(0)

gangshou + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档