十五分钟学会用Hessian
2014-01-03 23:33 飘扬的红领巾 阅读(1307) 评论(1) 编辑 收藏 举报了解Hessian
Hessian是远程调用的一种技术,和WebService类似,但不同的是较WebService而言,它更轻量级,更简单,更快速。关于Hessian更详细全面的介绍可以查看http://hessian.caucho.com/。下面可以花十五分钟的时间,学会怎么简单的使用Hessian。
使用Hessian
在Eclipse建立一个Maven webapp项目:
右键项目添加Hessian的依赖:
Maven随后会去中央仓库下载Hessian相关的jar包。
添加一个提供Hessian服务的接口:
1: /**2: * @ClassName: HessianService3: * @Description: Hessian服务接口4: * @author liping.action@gmail.com5: * @date 2014-1-3 下午10:41:266: *7: */8: public interface HessianService {9: public String sayHello(String name);10: }
以及现实类:
1: public class HessianServiceImpl implements HessianService {2: /*3: * (non-Javadoc)4: *5: * @see6: * com.cnblogs.leefreeman.hessian.service.HessianService#sayHello(java.lang7: * .String)8: */9: @Override
10: public String sayHello(String name) {11: // TODO Auto-generated method stub12: return "hello " + name;13: }
14: }
最后在web.xml中增加hessian相应的配置:
1: <servlet>2: <servlet-name>service</servlet-name>3: <servlet-class>com.caucho.hessian.server.HessianServlet</servlet-class>4: <load-on-startup>1</load-on-startup>5: <init-param>6: <param-name>service-class</param-name>7: <param-value>com.cnblogs.leefreeman.hessian.service.impl.HessianServiceImpl</param-value>8: </init-param>9: </servlet>10: <servlet-mapping>11: <servlet-name>service</servlet-name>12: <url-pattern>/service</url-pattern>13: </servlet-mapping>
现在Hessian服务端就算完成,是不是觉得很简单。启动项目:
打开该页面说明Hessian服务端启动正常。接口下来编写客户端测试用例:
1: public class HessianServiceTest {
2: private final static String SERVICE_URL = "http://localhost:8080/hessian-project/service";
3:
4: @Test
5: public void testSayHello() {
6: HessianProxyFactory proxyFactory = new HessianProxyFactory();
7: try {
8: HessianService hessianService = (HessianService) proxyFactory
9: .create(HessianService.class, SERVICE_URL);
10: System.out.println(hessianService.sayHello("liping"));
11: } catch (MalformedURLException e) {
12: e.printStackTrace();
13: }
14: }
15: }
结果:
一个简单的Hession应用就完成了,相比搭建Webservice项目,要简单得多。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?