hessian是什么东西就不多说了,具体可以查阅相关的资料。由于hessian简洁的实现了轻量级的远程调用,因此在基于B/S构架的项目集成上所带来的简便是不言而喻的,下面就总结下hessian与项目集成的两种方式。
一、独立使用hessian
首先需要在web.xml中声明提供远程访问环境,具体方法如下:
<servlet>
<servlet-name>remoteService</servlet-name>
<servlet-class>com.caucho.hessian.server.HessianServlet</servlet-class>
<init-param>
<param-name>service-class</param-name>
<param-value>com.soft.server.common.RemoteProviderImpl</param-value><!--提供远程服务的实现类-->
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>remoteService</servlet-name>
<url-pattern>/remote.service</url-pattern><!---访问服务名-->
</servlet-mapping>
然后制定制定相关的业务方法。
二、用spring包装过的hessian
其中web.xml中的配置方法为
<servlet>
<servlet-name>remoteService</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>remoteService</servlet-name>
<url-pattern>/remote.service</url-pattern>
</servlet-mapping>
spring中的配置为(注:该配置文件的名字必须要求为:服务名-servlet.xml,并且和web.xml放置在一起)
<bean name="remoteService" class="org.springframework.remoting.caucho.HessianServiceExporter">
<property name="service">
<ref bean="getRemoteService"/><!---接口的实现类--->
</property>
<property name="serviceInterface">
<value>com.soft.service.common.RemoteProvider</value><!--接口--->
</property>
</bean>
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/remote.service">remoteService</prop>
</props>
</property>
</bean>
其余的就是根据需要实现业务方法。
三、客户端的访问方式示例
import com.caucho.hessian.client.HessianProxyFactory;
public class TestProvider {
public static void main(String []args) throws Exception
{
//Hessian服务的url
String url = "http://localhost:8080/soft/remote.service";
//创建HessianProxyFactory实例
HessianProxyFactory factory = new HessianProxyFactory();
//获得Hessian服务的远程引用
RemoteProvider d = (RemoteProvider) factory.create(RemoteProvider.class, url);
//调用远程服务。
System.out.println("下面调用Hessian服务: " + d.getName("201010"));
}
}
从配置的文件数来说,直接运用hessian貌似比用spring包装过的hessian过的简单些,但是运用spring包装过的hessian在开多个远程服务端时候有很大的优势。运用spring包装过的hessian需要注意把它的配置文件和web.xml放在同一目录下面。
分享到:
相关推荐
Hessian的设计目标是为了提供高效、简单的远程调用方式,使得客户端能够像调用本地方法一样调用远程服务。 **独立使用Hessian** ...通过这些资源,开发者可以更深入地理解并应用Hessian在实际项目中的各种场景。
第一部分 Spring的核心 第1章 开始Spring之旅 1.1 Spring是什么 1.2 开始Spring之旅 1.3 理解依赖注入 1.3.1 依赖注入 1.3.2 DI应用 1.3.3 企业级应用中的依赖注入 1.4 应用AOP ...B.4 小结
第一部分 Spring的核心 第1章 开始Spring之旅 1.1 Spring是什么 1.2 开始Spring之旅 1.3 理解依赖注入 1.3.1 依赖注入 1.3.2 DI应用 1.3.3 企业级应用中的依赖注入 1.4 应用AOP ...B.4 小结
目录 第一部分spring的核心 第1章开始spring之旅 1.1spring是什么 1.2开始spring之旅 1.3理解依赖注入 ...1.3.3企业级应用中的依赖注入 ...1.5小结 ...2.6小结 ...3.7小结 ...4.6小结 ...5.3在spring里使用jdbc ...b.4小结
14.5.2. 小结 14.6. 文档视图(PDF/Excel) 14.6.1. 简介 14.6.2. 配置和安装 14.6.2.1. 文档视图定义 14.6.2.2. Controller 代码 14.6.2.3. Excel视图子类 14.6.2.4. PDF视图子类 14.7. JasperReports 14.7.1. 依赖...
14.5.2. 小结 14.6. 文档视图(PDF/Excel) 14.6.1. 简介 14.6.2. 配置和安装 14.7. JasperReports 14.7.1. 依赖的资源 14.7.2. 配置 14.7.3. 构造ModelAndView 14.7.4. 使用子报表 14.7.5. 配置Exporter的...
14.5.2. 小结 14.6. 文档视图(PDF/Excel) 14.6.1. 简介 14.6.2. 配置和安装 14.7. JasperReports 14.7.1. 依赖的资源 14.7.2. 配置 14.7.3. 构造ModelAndView 14.7.4. 使用子报表 14.7.5. 配置Exporter的...
14.5.2. 小结 14.6. 文档视图(PDF/Excel) 14.6.1. 简介 14.6.2. 配置和安装 14.7. JasperReports 14.7.1. 依赖的资源 14.7.2. 配置 14.7.3. 构造ModelAndView 14.7.4. 使用子报表 14.7.5. 配置Exporter的...
14.5.2. 小结 14.6. 文档视图(PDF/Excel) 14.6.1. 简介 14.6.2. 配置和安装 14.7. JasperReports 14.7.1. 依赖的资源 14.7.2. 配置 14.7.3. 构造ModelAndView 14.7.4. 使用子报表 14.7.5. 配置Exporter的...