hessian 接口使用总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Hessian 接口使用示例总结
一、使用hessian接口准备
首先,hessian接口的使用,必须要准备hessian接口的jar包,本文使用的jar包如下:
hessian-4.0.7.jar
Hessian接口的使用是在两个工程之间,工程A作为服务方,B作为使用方(客户端)。二、服务方的配置和服务类的编写
A作为服务方,首先向A中导入hessian的jar包,若是maven工程,则直接添加hessian的依赖jar则可,否则直接将jar导入工程lib下面。
依赖添加如下:在A的pom.xml中添加
添加完依赖之后,实现hessian的服务配置实现。配置hessian的servlet,便于服务方可以解析hessian的服务请求。在A中web.xml配置hessian的servlet如下:
配置完servlet之后,客户端的.hs的方式请求,都会按照servlet的配置,会到hessian-servlet.xml文件中读取配置,找到对应的服务的类方法。下面配置hessian-servlet.xml 文件。
本文件为spring的配置文件,主要存放hessian的服务方的配置,多个hessian接口的配置均可以放到本文件中统一管理。下面以/hessianTestService.hs为例解释:配置如下
Bean name=“hessianTestService” 此为hessian接口的服务类的bean配置,这个大家都懂的,
Bean name =“/hessianTestService.hs” 服务名,以.hs结尾,同时对应hessian的servlet的分发配置url mapping 如上面的servlert的配置。Class为固定的jar包类的class。org.springframework.remoting.caucho.HessianServiceExporter,此类包含两个属性:
Name=“service” 这是配置hessian服务对应的实现类。注入实现类的bean—hessianTestService Name=“serviceInterface” 这是服务类实现的接口层。Value 设置接口名,带上包名的全称。到此,hessian服务方的配置,全部完成。
下面实现服务类的,编写测试的方法如下:编写简单的测试方法,printMyName();
编写配置里面对应的实现类的接口:
三、客户端main函数的测试实现
服务方配置完成之后,启动A工程,保证服务方的正常运行。
在B工程中首先编写main函数测试,能不能得到A中的刚刚编写的测试类的服务。
首先,同样,使用hessian接口,还是要导入hessian的jar包。
然后,编写与服务方同样的接口层,客户端的配置实现:客户端的接口层如下:
然后编写,客户端的main调用实现类如下:
客户端的测试类分为两部分:getservice()和excute()
首先用服务方提供的url得到接口层的服务IHessianTestService,然后通过IHessianTestService 来执行服务方类的方法。至此,直接运行测试类的main方法,可以测试hessian的服务方是否可以使用。可以使用,则可以进行客户端的配置和注入使用。
测试运行结果如下:可以发现,调用了服务方的函数,得到结果显示。
四、客户端的配置和注入
测试通过了之后,开始配置hessian客户端:配置内容如下:
Bean name=”test HessianHs”客户端的beanname class对应的是jar包类:
org.springframework.remoting.caucho.HessianProxyFactoryBean
serviceInterface 对应的是客户端编码的与服务方一样的接口层。
ServiceUrl 对应的是服务方提供的url(工程上下文+hessian服务名)
工程上下文最后是配置方式的,方便实现不同环境的切换。
配置客户端bean,最好是建一个专门的客户端spring配置文件,我是用hessian-client文件。让客户端工程的web.xml加载hessian-client.xml.
将得到的客户端bean testHessianHs 可以方便的注入到你的controller中,可以使用服务方的服务类的实现方法。注入方式如下:
连发开发部12061799李林
20130927