Hessian探究(一)Hessian入门示例

本文介绍Hessian轻量级RPC框架的使用方法,包括Maven依赖配置、服务接口定义及实现、web.xml配置以及客户端调用过程。

一、hessian的maven信息:

[html]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. <dependency>  
  2.     <groupId>com.caucho</groupId>  
  3.     <artifactId>hessian</artifactId>  
  4.     <version>4.0.38</version>  
  5. </dependency>  

二、入门示例,以web方式提供对外接口

(1)服务接口:

[java]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. package com.tianjunwei.hessian.server;  
  2.   
  3. public interface HelloService {  
  4.      public String helloWorld(String message);  
  5. }  
(2)接口实现:

[java]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. package com.tianjunwei.hessian.server;  
  2.   
  3. public class HelloServiceImpl implements HelloService{  
  4.   
  5.     @Override  
  6.     public String helloWorld(String message) {  
  7.         return "hello," + message;  
  8.     }  
  9. }  
(3)web.xml的配置:

[html]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. <web-app>  
  2.     <servlet>  
  3.          <servlet-name>hessian-service</servlet-name>  
  4.            
  5.          <servlet-class>  
  6.              com.caucho.hessian.server.HessianServlet  
  7.          </servlet-class>  
  8.            
  9.          <init-param>              
  10.              <param-name>home-class</param-name>              
  11.              <param-value>  
  12.                  <!-- 服务实现类 -->  
  13.                  com.tianjunwei.hessian.server.HelloServiceImpl  
  14.              </param-value>  
  15.          </init-param>  
  16.    
  17.          <init-param>              
  18.              <param-name>home-api</param-name>  
  19.             <!-- 服务接口 -->  
  20.              <param-value>com.tianjunwei.hessian.server.HelloService</param-value>  
  21.          </init-param>  
  22.    
  23.     </servlet>  
  24.    
  25.     <servlet-mapping>  
  26.         <servlet-name>hessian-service</servlet-name>  
  27.         <url-pattern>/hessian</url-pattern>  
  28.     </servlet-mapping>  
  29. </web-app>  
(4)客户端调用:

第(3)步中,通过配置servlet,这样就可以通过发布的http进行访问,根据Hessian提供的机制,这样就可以通过url进行服务调用。

[java]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. package com.tianjunwei.hessian.client;  
  2.   
  3. import java.net.MalformedURLException;  
  4.   
  5. import com.caucho.hessian.client.HessianProxyFactory;  
  6. import com.tianjunwei.hessian.server.HelloService;  
  7.   
  8. public class HelloServiceMain {  
  9.   
  10.     public static void main(String [] args) throws MalformedURLException{  
  11.        String url = "http://localhost:8080/hessian";  
  12.         System.out.println(url);  
  13.         HessianProxyFactory factory = new HessianProxyFactory();  
  14.         HelloService helloService = (HelloService) factory.create(HelloService.class, url);  
  15.         System.out.println(helloService.helloWorld("jimmy"));  
  16.     }  
  17.       
  18. }  

运行结果:

http://localhost:8080/hessian
hello,jimmy

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值