`

Hessian

    博客分类:
  • RMI
 
阅读更多

    公司不同pool之间提供service都是通过hessian来开放接口的,个人觉得hessian的使用非常简单。做个demo如下:

0.首先创建web工程,并加载hessian.jar。

1.创建service,即我们通过它来提供接口:

1 public interface BasicService { 
2    
3     public void setServiceName(String serverName); 
4    
5     public String getServiceName(); 
6        
7     public User createUser(); 
8        
9 }

 

2.创建service实现:

01 public class BasicServiceImpl implements BasicService { 
02    
03     private String serviceName; 
04        
05     @Override 
06     public void setServiceName(String serverName) { 
07         this.serviceName = serverName; 
08     
09        
10     @Override 
11     public String getServiceName() { 
12         return this.serviceName; 
13     
14        
15     @Override 
16     public User createUser() { 
17         return new User("zhangsan""123456"); 
18     
19 }

3.创建需要通过hessian传递的对象(必须序列化):

01 public class User implements Serializable { 
02    
03     private static final long serialVersionUID = 5792818254468116836L; 
04    
05     private String username; 
06        
07     private String password; 
08        
09     public User(String username, String password) { 
10         this.username = username; 
11         this.password = password; 
12     
13    
14     public String getUsername() { 
15         return username; 
16     
17    
18     public void setUsername(String username) { 
19         this.username = username; 
20     
21    
22     public String getPassword() { 
23         return password; 
24     
25    
26     public void setPassword(String password) { 
27         this.password = password; 
28     
29 }

4.配置web.xml:

01 <?xml version="1.0" encoding="UTF-8"?> 
02 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://java.sun.com/xml/ns/javaee"xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"
03   <display-name>HessianServer</display-name
04      
05   <servlet
06     <servlet-name>basic</servlet-name
07     <servlet-class>com.caucho.hessian.server.HessianServlet</servlet-class
08     <init-param
09         <param-name>service-class</param-name
10         <param-value>com.loujinhe.service.impl.BasicServiceImpl</param-value
11     </init-param
12   </servlet
13      
14   <servlet-mapping
15     <servlet-name>basic</servlet-name
16     <url-pattern>/basic</url-pattern
17   </servlet-mapping
18      
19 </web-app>

 

5.创建测试用例:

01 import java.net.MalformedURLException; 
02    
03 import org.junit.Before; 
04 import org.junit.Test; 
05    
06 import com.caucho.hessian.client.HessianProxyFactory; 
07 import com.loujinhe.service.BasicService; 
08    
09    
10 public class BasicServiceTest { 
11        
12     private BasicService basicService; 
13    
14     @Before 
15     public void init() throws MalformedURLException { 
16         HessianProxyFactory factory = new HessianProxyFactory(); 
17         String url = "http://localhost:8080/HessianServer/basic"
18         basicService = (BasicService)factory.create(BasicService.class, url); 
19     
20        
21     @Test 
22     public void testBasic() { 
23         basicService.setServiceName("BasicService"); 
24         System.out.println(basicService.getServiceName()); 
25            
26         System.out.println(basicService.createUser().getUsername()); 
27         System.out.println(basicService.createUser().getPassword()); 
28     
29 }

6.启动服务器,运行测试用例,会得到如下结果:

 

BasicService

zhangsan

123456

来自:http://blog.csdn.net/loujinhe/article/details/8479238

分享到:
评论

相关推荐

    hessian-4.0.63-API文档-中文版.zip

    赠送jar包:hessian-4.0.63.jar; 赠送原API文档:hessian-4.0.63-javadoc.jar; 赠送源代码:hessian-4.0.63-sources.jar; 赠送Maven依赖信息文件:hessian-4.0.63.pom; 包含翻译后的API文档:hessian-4.0.63-...

    Hessian 使用小结

    Hessian的设计目标是为了提供高效、简单的远程调用方式,使得客户端能够像调用本地方法一样调用远程服务。 **独立使用Hessian** 在不依赖任何框架的情况下,使用Hessian的步骤如下: 1. **添加依赖**:首先,...

    Hessian多个版本打包下载

    这个压缩包包含了Hessian的多个版本,分别是Hessian3.1.6、Hessian3.2.1以及Hessian4.0.7。每个版本都有其特定的功能改进和优化,了解这些版本的区别和适用场景对于开发者来说至关重要。 Hessian3.1.6是Hessian的一...

    多尺度hessian滤波器图像增强

    在图像处理领域,多尺度Hessian滤波器是一种高级的图像增强技术,它主要用于检测图像中的线性结构,特别是对于微弱或者噪声较大的图像特征有很好的识别能力。这个技术是基于数学形态学的Hessian矩阵理论,由V.S. ...

    hessian-4.0.63-API文档-中英对照版.zip

    赠送jar包:hessian-4.0.63.jar; 赠送原API文档:hessian-4.0.63-javadoc.jar; 赠送源代码:hessian-4.0.63-sources.jar; 赠送Maven依赖信息文件:hessian-4.0.63.pom; 包含翻译后的API文档:hessian-4.0.63-...

Global site tag (gtag.js) - Google Analytics