一、使用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中 添加:如下的pom依赖配置:

添加完依赖之后,实现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=”testHessianHs” 客户端的beanname class对应的是jar包类:org.springframework.remoting.caucho.HessianProxyFactoryBean

serviceInterface 对应的是客户端编码的与服务方一样的接口层。ServiceUrl 对应的是 服务方提供的url(工程上下文+hessian服务名)工程上下文 最后是配置方式的,方便实现不同环境的切换。

注意:配置客户端bean,最好是建一个专门的客户端spring配置文件,我是用hessian-client文件。让客户端工程的web.xml加载hessian-client.xml.

将得到的客户端bean   testHessianHs 可以方便的注入到你的controller中,可以使用服务方的服务类的实现方法。注入方式如下:

到此为止,就能方便的在自己的业务类中注入自己的客户端的接口,方便的调用服务方提供的适用方法了.

简单的hessian接口的使用就结束了.

本文为原创作品,欢迎吐槽,转载请注明:http://www.cnblogs.com/lilin0719/

Hessian 接口使用示例总结(转载)的更多相关文章

  1. Hessian 接口使用示例总结

    一.使用hessian接口准备 首先,hessian接口的使用,必须要准备hessian接口的jar包,本文使用的jar包如下:hessian-4.0.7.jar; Hessian接口的使用一般是在两 ...

  2. ContentProvider 使用示例(转载)

    ContentProvider 使用示例(转载) 当数据需要在应用程序间共享时,我们就可以利用ContentProvider为数据定义一个URI.之后其他应用程序对数据进行查询或者修改时,只需要从当前 ...

  3. 国际快递查询接口JAVA示例-trackingmore

    国际快递查询接口 国际快递查询接口的需求量很大,例如一些跨境电商B2C网站.快递查询APP.快递柜.跨境物流公司等都会需要用到国际快递接口. 目前市面上的快递接口,以国内快递居多,有些虽然号称支持多家 ...

  4. 关于hessian接口类方法顺序及对象序列化的实战研究

    前段时间,提供出去的hessian接口被调用时,调用方出现序列化异常以及其他莫名的异常.同事说hessian接口使用有2个注意事项: 1.对于已经存在的hessian接口,后续增加的方法只能加在文件末 ...

  5. 【极力分享】[C#/.NET]Entity Framework(EF) Code First 多对多关系的实体增,删,改,查操作全程详细示例【转载自https://segmentfault.com/a/1190000004152660】

      [C#/.NET]Entity Framework(EF) Code First 多对多关系的实体增,删,改,查操作全程详细示例 本文我们来学习一下在Entity Framework中使用Cont ...

  6. 基于JAVA的全国天气预报接口调用示例

    step1:选择本文所示例的接口"全国天气预报接口" url:https://www.juhe.cn/docs/api/id/39/aid/87step2:每个接口都需要传入一个参 ...

  7. DOM4J介绍与代码示例【转载】

    DOM4J是dom4j.org出品的一个开源XML解析包.Dom4j是一个易用的.开源的库,用于XML,XPath和XSLT.它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX和JA ...

  8. Java _Map接口的使用(转载)

    转载自:http://blog.csdn.net/tomholmes7/article/details/2663379.转载请注明原作者地址 Map Map以按键/数值对的形式存储数据,和数组非常相似 ...

  9. 脑波设备mindwave TGCD接口开发示例

    对于TGCD的开发,神念科技提供的文件包括,头文件thinkgear.h,thinkgear.lib,thinkgear.dll,有这三个文件,在win32下开发就不是什么难事了吧 如果是java语言 ...

随机推荐

  1. 洛谷 P4127 [AHOI2009]同类分布

    题意简述 求l~r之间各位数字之和能整除原数的数的个数. 题解思路 数位DP 代码 #include <cstdio> #include <cstring> typedef l ...

  2. 使用PowerShell 测试DNS

    运行环境:Windows Server 2012 R2 获取服务器DNS命令,下面的仅获取一个dns (nslookup sql.ciras.com)[1].split(':')[1].trim() ...

  3. 最小生成树模板题-----P3366 【模板】最小生成树

    题目描述 如题,给出一个无向图,求出最小生成树,如果该图不连通,则输出orz 输入格式 第一行包含两个整数N.M,表示该图共有N个结点和M条无向边.(N<=5000,M<=200000) ...

  4. Python 竟能绘制如此酷炫的三维图

    通常我们用 Python 绘制的都是二维平面图,但有时也需要绘制三维场景图,比如像下面这样的: 这些图怎么做出来呢?今天就来分享下如何一步步绘制出三维矢量(SVG)图. 八面体 我们先以下面这个八面体 ...

  5. case when多条件

    SELECT label ,label3 ,lon_cen ,lat_cen ,lon3 ,lat3 ,antenna_height ,horizontal_angle ,CASE WHEN roun ...

  6. 小白学Python(4)——用Python创建PPT

    python-pptx是一个用于创建和更新PowerPoint(.pptx)文件的Python库. 典型的用途是从数据库内容生成自定义的PowerPoint演示文稿,可通过单击Web应用程序中的链接进 ...

  7. [ PyQt入门教程 ] PyQt+socket实现远程操作服务器

    来需求了..干活啦.. 需求内容 部分时候由于缓存刷新.验证码显示不出来或者浏览器打不开或者打开速度很慢等原因,导致部分测试同事不想使用浏览器登录服务器执行命令.期望有小工具可以替代登录浏览器的操作, ...

  8. 第一次appium自动化

    今天,自己独自做了一下app自动化,从搭环境到写好一个脚本花了很长时间.用的主要环境是python3.7+appium+sdk+夜神模拟器.appium环境搭建较于复杂,这里就不累述,参考百度教程. ...

  9. JAVA通过HTTP方式获取数据

    测试获取免费天气数据接口:http://www.weather.com.cn/data/sk/101190408.html URL数据如下图: 代码部分: package https; import ...

  10. 设计模式(C#)——07装饰者模式

    推荐阅读:  我的CSDN  我的博客园  QQ群:704621321       在一款战斗类的游戏中,随着故事情节的发展,玩家(即游戏中的主角,下文统一为主角)通常会解锁一些新技能.最初主角只有使 ...