服务端代码:
对外提供服务的接口,和普通接口一样
public interface MathService { public int add(int a, int b); }接口实现类,和普通接口实现类一样
public class HessianMathService implements MathService { public int add(int a, int b){ return a + b; } }要注意的是传输的JAVA对象(如DTO)需要序列化,如这里的a如果是个对象,就需要序列化。
服务端配置
web.xml
<!-- hessian服务配置 --> <servlet> <servlet-name>Hessian</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value> classpath:webservice/spring-hessian-server.xml </param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Hessian</servlet-name> <url-pattern>/hessian/*</url-pattern> </servlet-mapping>spring-hessian-server.xml (名字随便起,但该配置要交给spring管理 ,并和上面的param-value中相同)
<bean id=" hessianService" class=" com.test.webservice.hessian. HessianServiceImpl" autowire="byType"/> <bean name="/ hessianService" class="org.springframework.remoting.caucho.HessianServiceExporter"> <property name="service" ref=" hessianService "/> <property name="serviceInterface" value=" com.test.webservice.hessian. HessianService "/> </bean>客户端需引入hessian 的jar,还需要服务端导出接口类的jar,放入lib
客户端代码:
和使用客户端本身的service一样。
客户端配置
<bean id=" hessianService" name=" hessianService " class="org.springframework.remoting.caucho.HessianProxyFactoryBean" > <property name="serviceUrl" value="http://127.0.0.1/test/hessian/hessianService" /> <property name="serviceInterface" value="com.test.webservice.hessian. HessianService" /> <property name="readTimeout" value="10000" /> </bean>注意:HESSIAN要求客户端和服务器端接口Package名Class名相同,传输DTO的Class相同。服务器端新增字段不影响旧客户端调用,反之,客户端新增字段会造成调用失败。
相关推荐
Hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能。 相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据。参考文档地址...
Hessian是一个由Caucho Technology开发的轻量级二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据。 本例子使用spring 整合hessian使开发更加的容易。
通过这个例子,我们可以了解到如何在Spring中配置Hessian服务,并在客户端进行调用。这对于初学者来说是一个很好的起点,可以深入理解分布式系统的通信机制。同时,对于追求高性能服务间通信的开发者,Hessian提供了...
2. **Hessian例子**: 压缩包中的“hessian_例子”可能包含了一些基本的Hessian客户端和服务端的代码示例,这些示例可以帮助你理解如何在实际项目中使用Hessian进行服务调用。你可以通过运行这些例子来学习如何创建...
这个例子展示了如何在Spring MVC应用中集成Hessian,以及如何使用Maven管理依赖。实际开发中,还需要考虑错误处理、安全性、性能优化等方面的问题。通过这种方式,我们可以利用Hessian实现高效的远程服务调用,同时...
在IT行业中,Hessian是一种轻量级的二进制序列化协议,主要用于远程方法调用(RMI)和Web服务。Hessian由Caucho ...在实际项目中,Hessian还可以与其他技术结合,如Spring框架,以实现更复杂的分布式系统架构。
在本文中,我们将深入探讨如何使用Spring4框架与Hessian4库进行远程服务调用,构建一个外部接口调用的实例。Hessian是一种高效的RPC(Remote Procedure Call)协议,它能够将Java对象序列化为HTTP流,使得客户端和...
这个压缩包文件包含了关于Hessian的入门实例以及如何将其与Spring框架整合的教程。 一、Hessian入门实例 Hessian的入门实例主要展示了如何创建一个简单的服务提供者和消费者。首先,我们需要定义一个服务接口,例如...
在这个“hessian学习实例”中,我们将深入探讨Hessian框架的使用,特别是如何将其与Spring框架集成,以及如何构建server端和client端。 首先,让我们理解Hessian的工作原理。Hessian基于HTTP协议,它将Java对象序列...
演示例子分为三部分:Client 、Server、Skeleton; 其中,Client 是通过Hessian调用远程服务的客户端;Server是通过Hessian对外提供服务的服务端;Skeleton 是接口桥梁。 ...
本文将深入探讨如何使用注解来暴露Remoting服务,主要关注Spring的`@Service`, `@Autowired`, `@Transactional`等注解以及Hessian协议在远程服务中的应用。 首先,`@Service`是Spring的一个组件注解,用于标记业务...
6.8.1. 在Spring中使用AspectJ来为domain object进行依赖注入 6.8.1.1. @Configurable object的单元测试 6.8.1.2. 多application context情况下的处理 6.8.2. Spring中其他的AspectJ切面 6.8.3. 使用Spring IoC来...
6.8.4. 在Spring应用中使用AspectJ Load-time weaving(LTW) 6.9. 其它资源 7. Spring AOP APIs 7.1. 简介 7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点实施 7.2.3. AspectJ切入点表达式 7.2.4. ...
1. **服务提供者(Provider)**:使用Spring配置服务提供者,将服务接口及其实现类声明为Spring Bean,然后通过Dubbo的@Service注解标记,使得该服务可以在Dubbo服务治理中注册并暴露。 2. **服务消费者(Consumer...
Spring Framework 开发参考手册 Rod Johnson Juergen Hoeller Alef Arendsen Colin Sampaleanu Rob Harrop Thomas Risberg Darren Davison Dmitriy Kopylenko Mark Pollack ...19.2. 使用Spring JMS ...
<br>AOP 入门 AOP 的观念与术语都不是很直觉,可以先从代理机制(Spring 实现 AOP 的一种方式)来看看实际的例子,从而了解 AOP 的观念与各种术语。 从代理机制初探 AOP 动态代理 <br>AOP 观念与...
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...
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框架来实现文件上传。Hessian是一种高效的RPC(远程过程调用)协议,它能够提供轻量级的、跨语言的服务调用,而Spring则是一个广泛使用的Java企业级应用开发框架...