Hessian介绍
来源:互联网 发布:养女方知父母恩全诗 编辑:程序博客网 时间:2024/06/02 15:42
简介
Hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能。 相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据。
技术对比
谈到remoting,会想到RMI和webservice规范,这两种规范的实现也是非常之多的,这篇博客介绍的Hessian也是RMI的一种实现,而且是二进制协议的,所以这个就比webservice性能要高一些。并且hessian在生成二进制方面也是非常有优势的,生成的二进制相比其他远程技术会小一些。
实例
建立MAVEN项目,在pom.XML文件中引入
<dependency> <groupId>com.caucho</groupId> <artifactId>hessian</artifactId> <version>4.0.7</version></dependency>
在web.XML中配置一个servlet配置
<servlet> <servlet-name>register</servlet-name> <servlet-class>com.caucho.hessian.server.HessianServlet</servlet-class> <init-param> <param-name>service-class</param-name> <param-value>com.hessian.hessiantest.service.imp.RegisterServiceImpl</param-value> </init-param> </servlet><servlet-mapping> <servlet-name>register</servlet-name> <url-pattern>/register</url-pattern></servlet-mapping>
编写一个service实现
private String greeting = "Hello, world, 你已经注册成功啦"; @Override public void setMsg(String greeting) { this.greeting=greeting; System.out.println("成功消息打印:"+greeting); } @Override public String hello() { return greeting; }
配置jetty服务器,启动maven项目部署。编写测试程序
String url ="http://127.0.0.1:8081/hessian/register"; HessianProxyFactory factory = new HessianProxyFactory(); IRegisterService registerService = (IRegisterService) factory.create(IRegisterService.class, url); System.out.println("注册消息:" + registerService.hello()); registerService.setMsg("Hello!world"); System.out.println("欢迎消息:" + registerService.hello());
直接执行main方法,会出现下面堆栈信息,表明调用成功
其余优点
另外一个优点是hessian可以非常容易的与spring框架集成。有兴趣的童鞋可以自行研究一下。
总结
目前很多分布式系统都离不开远程方法调用,也许你在用ejb,也许你在用webservice,异或是在用其他的一些技术,选择合适的才是最重要的,所以有必要学习一下hessian,以备将来不时之需。
0 0
- Hessian 介绍
- Hessian介绍
- Hessian介绍
- Hessian介绍
- Hessian介绍
- Hessian介绍及使用说明
- Hessian RMI功能介绍
- hessian 的简单介绍
- hessian 的简单介绍
- Hessian的使用介绍
- Hessian的使用与介绍
- Hessian远程调用框架进阶教程(一) Hessian介绍JAVA使用Hessian进行编程实例
- Hessian
- hessian
- Hessian
- Hessian
- hessian
- Hessian
- C++ string 详解
- 公益团队招募书
- 记忆术的核心原理和重要操作程序
- codeforces Variable Shadowing 栈的模拟
- Path Sum II - LeetCode
- Hessian介绍
- vim之IDE进化实录
- 法外之徒小组的项目记录博客成立了!
- SOJ.Opening Ceremony
- iOS图片上传
- 第四周上机实践项目3——用对象数组操作长方柱类
- STM32 OSC_IN和OSC_OUT的作用 和 各种接法
- Linux内核模块Makefile一个新手容易犯的错
- BNU训练赛 D 交集