Hessian快速简单开发
Hessian是什么?
首先知道 :RMI(Remote Method Invocation,远程方法调用)是Java在JDK1.2中实现的, Java RMI 支持存储于不同地址空间的程序级对象之间彼此进行通信,实现远程对象之间的无缝远程调用。(即它能够让在某个 Java 虚拟机上的对象调用另一个 Java 虚拟机中的对象上的方法)
【优点】:
Java RMI具有Java的"Write Once,Run Anywhere"的优点,是分布式应用系统的百分之百纯Java解决方案。用Java RMI开发的应用系统可以部署在任何支持JRE(Java Run Environment Java,运行环境)的平台上。
【缺点】:
RMI对于用非Java语言开发的应用系统的支持不足。不能与用非Java语言书写的对象进行通信。
在大力鼓吹Web Service、SOA的时代,是不是每个应用都应该选用笨拙的Web Service组件来实现,通过对比测试后,RMI是最简单的,在一些小的应用中是最合适的。
Hessian是什么
官网介绍:
The Hessian binary web service protocol makes web services usable without requiring a large framework, and without learning yet another alphabet soup of protocols. Because it is a binary protocol, it is well-suited to sending binary data without any need to extend the protocol with attachments. |
Hessian是一个由Caucho Technology开发的轻量级二进制RPC协议。和其他Web服务的实现框架不同的是,Hessian是一个使用二进制格式传输的Web服务协议的框架,相对传统soap web service,更轻量,更快速。它的好处在于免除了一大堆附加的API包,例如XML的处理之类的jar包,这也就是为什么说它是一个轻量级的Web服务实现框架的原因,这个原因还在于手机上的应用程序可以通过Hessian提供的API很方便的访问Hessian的Web服务。
目前已经支持N多语言(跨语言平台的特性):
对于我们来说,用来在不同的java服务器之间交换数据使用。底层:rmi。
人员系统,订单系统,统计分析系统。--子系统间用快的hessian。
Hessian的下载
官网: http://hessian.caucho.com/
Hessian的快速入门
服务端的开发(Servlet方式)
1 创建Web工程,引入Hessian的Jar
2 编写业务接口和实现类
3 配置web.xml
4 部署到tomcat,测试是否发布成功
(服务已经发布成功,但是提醒的意思是:Hessian的服务必须使用POST的请求方式)
客户端的开发
1 创建Java工程,添加Hessian的jar
2 将服务端的业务接口复制到客户端工程中:包名和接口名以及方法名都必须一致
提示:接口名字、包名要和服务端的一致。
3 编写客户端测试代码
【优化扩展】
客户端的接口类的名字、包名也可以不和服务端的不一致,但需要在创建桩实例的时候指定接口的class,否则会抛出异常。
将接口代码更改后
再运行测试
代码地址:https://github.com/WangShuang77/Hessian/tree/master
如有问题发送邮件:[email protected]