Hessian:采用的是二进制RPC协议,因为采用的是二进制协议。
Hessian通过其自定义的串行化机制将请求信息进行序列化,产生二进制流,基于Http协议进行传输,
响应端根据Hessian提供的API来接收请求,Hessian根据其私有的串行化机制来将请求信息进行反序列化,
传递给使用者时已是相应的请求信息对象了。
Spring的hessian远程调用
客户端:
<bean id="testHessianServiceClient"
class="org.springframework.remoting.caucho.HessianProxyFactoryBean">
<!--访问服务端的路径-->
<property name="serviceUrl">
<value>
${client.remote.url}/callClientHessian
</value>
</property>
<!--是否允许方法重载,默认为false-->
<property name="overloadEnabled" value="true"></property>
<!--服务端接口-->
<property name="serviceInterface">
<value>com.test.hessian.HessianService</value>
</property>
</bean>
serviceInterface 是RemoteAccessor抽象类的属性
serviceUrl 是UrlBasedRemoteAccessor抽象类的属性
UrlBasedRemoteAccessor抽象类继承RemoteAccessor抽象类
服务端:
<bean id="service" class="com.test.hessian.TestService" />
<bean name="/callClientHessian" class="org.springframework.remoting.caucho.HessianServiceExporter">
<property name="service" ref="service" />
<property name="serviceInterface">
<value>com.test.hessian.HessianService</value>
</property>
</bean>
service,serviceInterface都是RemoteExporter抽象类的属性
web.xml中配置
<servlet>
<servlet-name>spring-remote</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring-remote</servlet-name>
<url-pattern>/remote/*</url-pattern>
</servlet-mapping>
注意:在使用hessian的时候遇到一个问题,就是在客户端不能有与服务端接口名称相同的接口,否则客户端就直接找客户端的接口了,而不找远程的接口
备注:相关的jar包。commons-logging-1.1.1.jar,hessian-3.2.0.jar,log4j-1.2.9.jar,
spring.jar spring-web.jar spring-webmvc.jar
hessian就像是远程注入,服务端创建服务,客户端调用
分享到:
相关推荐
纯Hessian的入门例子教程,还有Hessian和Spring整合的例子教程。 代码上传之前都运行通过的
1. 远程调用RMI(Remote Method Invocation): 通过使用 RmiProxyFactoryBean 和 RmiServiceExporter,并且,Spring支持两个传统的RMI(使用 java.rmi.Remote接口和java.rmi.RemoteException)和通过RMI调用器实现的...
给予spring的框架。 封装了xfire、rmi、hessian、httpinvoker 客户端可以统一调用,省略了远程调用的编码。 服务通过服务ID和服务接口来调用。
struts2+ibatis+spring+Hessian 整合项目 web项目整合,服务端用hessian协议远程调用服务端的方法,hessian是用spring代理整合,struts2+ibatis+spring的整合项目,用作学习和开发基础平台构建很有用处,工程导入...
远程方法调用的比较,Hessian方法的介绍和相关配置.Hessian是一个轻量级的remoting on http工具,采用的是Binary RPC协议,所以它很适合于发送二进制数据,同时又具有防火墙穿透能力。Hessian一般是通过Web应用来提供...
Hessian是一个轻量级的remoting on http工具,使用简单的方法提供了RMI(Remote Method Invocation,远程方法调用)的功能。采用的是二进制RPC(Remote Procedure Call Protocol,远程过程调用协议)协议,因为采用...
(9) spring-remoting.jar 这个jar文件包含支持EJB、JMS、远程调用Remoting(RMI、Hessian、Burlap、Http Invoker、JAX-RPC)方面的类。 (10) spring-support.jar 这个jar文件包含支持缓存Cache(ehcache)、JCA、...
12.2.2. 在Spring的application context中创建 SessionFactory 12.2.3. HibernateTemplate 12.2.4. 不使用回调的基于Spring的DAO实现 12.2.5. 基于Hibernate3的原生API实现DAO 12.2.6. 编程式的事务划分 12.2.7. ...
6.8.1. 在Spring中使用AspectJ进行domain object的依赖注入 6.8.2. Spring中其他的AspectJ切面 6.8.3. 使用Spring IoC来配置AspectJ的切面 6.8.4. 在Spring应用中使用AspectJ加载时织入(LTW) 6.9. 更多资源 7...
本示例是hessian与spring整合的,客户端与服务端相互调用的最完整例子。
这个jar文件包含支持EJB、JMS、远程调用Remoting(RMI、Hessian、Burlap、Http Invoker、JAX-RPC)方面的类。 (10) spring-support.jar 这个jar文件包含支持缓存Cache(ehcache)、JCA、JMX、邮件服务(Java ...
6.1 Spring远程调用概览 6.2 与RMI一起工作 6.2.1 连接RMI服务 6.2.2 输出RMI服务 6.3 使用Hessian和Burlap的远程调用 6.3.1 访问Hessian/Burlap服务 6.3.2 用Hessian或Burlap公开Bean的...
word源码java fleet-spring-boot ...远程调用框架 :Spring Boot Hessian 远程调用框架 :Spring Boot Forest Http 请求 :Spring Boot HTTP 访问控制 :Spring Boot GraphQL 构建 API :Spring Boot
这个jar文件包含支持EJB、JMS、远程调用Remoting(RMI、Hessian、Burlap、Http Invoker、JAX-RPC)方面的类。 (10) spring-support.jar 这个jar文件包含支持缓存Cache(ehcache)、JCA、JMX、邮件服务(Java ...
8.1 Spring远程调用概览 8.2 与RMI一起工作 8.2.1 连接RMI服务 8.2.2 输出RMI服务 8.3 使用Hessian和Burlap的远程调用 8.3.1 访问Hessian/Burlap服务 8.3.2 用Hessian或Burlap公开Bean的功能 8.4 使用...
8.1 Spring远程调用概览 8.2 与RMI一起工作 8.2.1 连接RMI服务 8.2.2 输出RMI服务 8.3 使用Hessian和Burlap的远程调用 8.3.1 访问Hessian/Burlap服务 8.3.2 用Hessian或Burlap公开Bean的功能 8.4 使用...
17.3. 使用Hessian或者Burlap通过HTTP远程调用服务 17.3.1. 为Hessian配置DispatcherServlet 17.3.2. 使用HessianServiceExporter暴露你的bean 17.3.3. 客户端连接服务 17.3.4. 使用Burlap 17.3.5. 对通过...
8.1spring远程调用概览 8.2与rmi一起工作 8.2.1连接rmi服务 8.2.2输出rmi服务 8.3使用hessian和burlap的远程调用 8.3.1访问hessian/burlap服务 8.3.2用hessian或burlap公开bean的功能 8.4使用httpinvoker ...
Spring In Action 简体中文CHM版 很多你开发的应用会像被遗弃... 本册子将涉及与RMI一起工作、使用Hessian和Burlap的远程调用、JMS发送消息、使用Tile设计页面布局、保护Web应用程序、使用JAX-RPC的Web Service等。
本文借鉴spring对hessian的支持,实现spring对Thrift的支持。服务端主要使用了spring的HttpRequestHandler接口...客户端主要使用spring的MethodInterceptor和UrlBasedRemoteAccessor以及代理来实现对服务端的远程调用。