使用hessian發布公共服務
前面有提到,如果要調用內部系統可以考慮使用輕量級rpc框架hessian。那麼有一個問題,如果我們調用得很頻繁而且調用的服務也很多的話,每個服務都進行發布會很麻煩,有沒有可能只發布一個公用服務就可以達到發布多個服務的目的呢?在這裡我們加上反射就可以實現。
1、添加hessian
<dependency>
<groupId>com.caucho</groupId>
<artifactId>hessian</artifactId>
<version>4.0.38</version>
</dependency>
2、排除spring-remoting(因為jar包衝突)
<dependency>
Advertisements
<groupId>org.acegisecurity</groupId>
<artifactId>acegi-security</artifactId>
<version>1.0.7</version>
<exclusions>
<exclusion>
<artifactId>spring-remoting</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
</exclusions>
Advertisements
</dependency>
3、添加hessian模塊
就是抽象出來發布公共hessian服務的模塊,如下圖是目錄結構
4、HessianModel.java
5、HessianPoint.java
6、CommonHessianService.java
7、CommonHessianServiceImpl.java
8、CommonHessianFactory.java
9、web.xml的修改
10、applicationContext.xml的修改
11、添加hessian-servlet.xml
12、hessian.properties
13、客戶端調用
(a)同樣要引入hessian所要用的jar包
(b)添加hessian.properties
(c)調用例子
14、有興趣的可以到這裡看看