`

Hessian应用

阅读更多
hessian是一种基于二进制协议传输的分布式组件。因为基于二进制协议而不是像webservice那样,基于xml,所以传输效率会高一些。
虽然不太明白其中的原理,但用java开发的hessian在.net下也是可以调用的, 即可以说实现跨平台。这方面的例子在网上也很少,所以决定花些时间整理一下,本人对hessian的了解也很有限。
hessian有许多版本,大的版本有两个,spring2.x支持hessian3,spring3.x支持hessian4。本例子将采用ibatis2+springmvc3+spring3+hessian4开发。下面列出使用了hessian需要注意的地方。
1.实体类必须实现Serializable接口。

2.配置hessian服务端.
<!-- 使用HessianServiceExporter 将普通bean导出成Hessian服务--> 
    <bean id="HessianRemoting" name="/HessianRemoting" class="org.springframework.remoting.caucho.HessianServiceExporter"> 
           <!--  需要导出的目标bean--> 
           <property name="service" ref="depService"/> 
           <!--  Hessian服务的接口--> 
           <property name="serviceInterface" value="com.adtech.service.DepService"/> 
    </bean> 
    
    <bean id="hessianMapping"
		class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
		<property name="mappings">			
			<props>
			  <prop key="/services">HessianRemoting</prop>
			</props>
		</property>
	</bean>

这个文件的文件名默认为remoting-servlet.xml,放在web-inf目录下。

3.客户端配置:

<bean id="myServiceClient" class="org.springframework.remoting.caucho.HessianProxyFactoryBean"> 
		<property name="serviceUrl"> 
			<value>http://localhost:8080/hessianService/remoting/services</value> 
		</property> 
		<property name="serviceInterface"> 
			<value>com.adtech.service.DepService</value> 
		</property> 
	</bean> 


4.客户端测试如下:
        @Before
	public void setUp() {
		context = new ClassPathXmlApplicationContext("remoting-client.xml");
	}

	@Test
	public void getAllDep() {
		DepService depService = (DepService) context.getBean("myServiceClient");
		System.out.println(depService.getAllDeps());
	}

从上面过程可以看出,其实在spring下开发hessian服务是一件相当简单的事。
分享到:
评论

相关推荐

    利用Maven构建多模块的Hessian应用

    本文将深入探讨如何利用Maven这一强大的构建工具来构建一个多模块的Hessian应用。Hessian是一种轻量级的二进制RPC协议,它能够高效地处理远程方法调用,尤其适用于分布式系统中的服务间通信。 首先,让我们了解...

    hessian应用

    平均来看,Hessian较RMI要慢20%左右,但这只是在数据量特别大,数据结构很复杂的情况下才能体现出来,中等或少量数据时,Hessian并不比RMI慢。 Hessian的好处是精简高效,可以跨语言使用,而且协议规范公开,我们...

    hessian小实例

    一个简单的Hessian应用可能包括以下部分: 1. **服务端**:定义一个名为`Calculator`的接口,包含`add(int a, int b)`方法。实现`CalculatorImpl`类,并在Servlet容器(如Tomcat)中部署HessianServlet,将`...

    Hessian矩阵以及在血管增强中的应用—OpenCV3和c++版本代码工程

    Hessian矩阵是图像处理和计算机视觉领域中一个重要的数学工具,尤其在特征检测和结构分析...在深入理解Hessian矩阵及其应用的同时,也需要熟悉图像处理的基本原理和OpenCV库的使用,这样才能更好地实现和优化此类算法。

    Hessian

    **Hessian:深入理解与应用** Hessian是一种二进制Web服务协议,它由Caucho Technology公司开发,主要用于提供轻量级、高效的远程方法调用(Remote Method Invocation,RMI)服务。Hessian的目标是简化分布式系统...

    Hessian实战应用之获取客户端请求URL和重新转发客户端请求

    本篇将详细探讨Hessian在实战中的应用,特别是如何获取客户端请求的URL以及如何重定向或转发客户端请求。 首先,我们需要了解Hessian的基本原理。Hessian是基于HTTP的,它将Java对象序列化为二进制格式,从而减少...

    hessian案例,hessian案例

    3. **Python中的Hessian**:Python也有对应的Hessian库,如`pyhessian`,它实现了Hessian协议,使得Python应用能够与Java Hessian服务进行通信。同样,服务端可以通过定义Python函数并包装为Hessian服务,客户端则...

    在 Spring Web Flow 项目中应用 Hessian 服务

    在Spring Web Flow项目中应用Hessian服务,是一个深入整合分布式服务和前端流程管理的重要实践。Spring Web Flow(SWF)是一个强大的MVC框架,用于构建具有复杂导航逻辑的Web应用程序,而Hessian则是一种轻量级的二...

    Hessian多个版本打包下载

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

    Hessian(Spring集成的)的应用与研究

    本文将深入探讨Hessian在Spring中的应用以及相关研究。 一、Hessian简介 Hessian是一种基于HTTP的二进制协议,它以简洁的二进制格式传输数据,相比于XML-RPC或JSON-RPC等文本协议,Hessian具有更高的传输效率和更快...

    基于Hessian矩阵增强的心血管分割_hessian_hessian血管_hessian血管分割_血管分割_Hessian矩阵

    在IT领域,尤其是在医学图像分析中,Hessian矩阵是一个重要的数学工具,用于图像特征检测,特别是在血管分割的应用中。本文将深入探讨标题和描述中提到的"基于Hessian矩阵增强的心血管分割"这一主题。 Hessian矩阵...

    多尺度hessian滤波器图像增强

    多尺度是指在不同分辨率下应用Hessian滤波器,这样可以更好地适应图像中的各种尺度特征。在小尺度上,滤波器可以捕获细小的细节;在大尺度上,它可以捕捉更粗大的结构。这样设计的好处是可以同时检测到不同尺寸的...

    hessian

    Hessian是一种二进制Web服务协议,由Caucho Technology公司开发,主要用于提供轻量级、高效的远程方法调用(Remote Method ...通过深入研究源码和利用相关工具,我们可以更好地利用Hessian的优势来优化我们的应用程序。

    springMVC hessian

    而 Hessian 是一种轻量级的远程过程调用(RPC)协议,它允许应用程序之间进行高效的二进制通信。 首先,让我们深入理解 SpringMVC。SpringMVC 提供了一个灵活的架构,用于处理 HTTP 请求、路由请求到相应的处理器、...

    Hessian异步请求访问包

    本知识点主要关注的是在Android平台上,如何使用Hessian进行异步请求访问,以便提高应用程序的性能和用户体验。 Hessian是由Caucho公司开发的一种轻量级、高效的RPC(Remote Procedure Call)协议。它将Java对象...

    hessian学习基础篇——序列化和反序列化

    本文将深入探讨Hessian框架的基础知识,它是一个高效的二进制序列化协议,广泛应用于Java和.NET之间跨语言通信。通过学习Hessian,我们可以更有效地处理数据传输,提高应用性能。 首先,让我们理解什么是序列化。...

    hessian-4.0.33.jar

    四、Hessian的优势与应用场景 Hessian的主要优势在于其高效的数据传输和简单易用的API,这使得它在低带宽环境或者对性能要求较高的场景下尤为适用。常见的应用场景包括: 1. 远程服务调用:如分布式系统中的服务间...

    Hessian协议格式

    Hessian 协议格式 Hessian 协议是一种轻量级的 remoting on http 工具,使用简单的方法...通过对 Hessian 协议报文格式的分析,我们可以更好地理解 Hessian 协议的工作原理,并更好地应用 Hessian 协议在实际项目中。

Global site tag (gtag.js) - Google Analytics