需要包:
spring 2.5.6
hessian 3.1.6
spring2.5.6不支持hessian4.0
web容器:
tomcat 6.0
1、定义接口;
public TBean implements Serializable
{
private String name;
private String code;
/**
*todo: get and set method here
*/
}
public interface IHello
{
TBean hello(TBean tb);
}
public class Hello implements IHello
{
/**todo:*/
}
2、通过spring mvc公布接口
spring配置文件中增加如下代码
<bean id="hello" class="Hello"/>
<bean name="helloHessian"
class="org.springframework.remoting.caucho.HessianServiceExporter">
<property name="service"><ref bean="hello"/></property>
<property name="serviceInterface">
<value>IHello</value>
</property>
</bean>
<bean id="urlMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/helloHessian">helloHessian</prop>
</props>
</property>
</bean>
配置web.xml,增加如下代码:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:conf/spring/spring*.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>remote</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:conf/spring/spring.remote.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>remote</servlet-name>
<url-pattern>/remote/*</url-pattern>
</servlet-mapping>
3、将接口发布到客户端程序
将IHello复制到客户端程序
客户端spring配置
<bean id="helloHessian" class="org.springframework.remoting.caucho.HessianProxyFactoryBean">
<property name="serviceUrl">
<value>http://xxxx:8080/hessian/remote/helloHessian</value>
</property>
<property name="serviceInterface">
<value>IHello</value>
</property>
</bean>
4、客户端调用接口
helloHessian.hello(null);
具体实现时,客户端的配置没有用到spring配置文件,而是写代码手工创建一个对象,代码如下:
public class DataSyncRemote
{
private static HessianProxyFactoryBean hessianProxy = new HessianProxyFactoryBean();
private Logger logger = Logger.getLogger(DataSyncRemote.class);
static
{
hessianProxy.setServiceInterface(IDataSyncHessian.class);
}
public static IDataSyncHessian getRemoteService(String ip)
{
hessianProxy.setServiceUrl("http://"+ip+":8080/hessian/remote/helloHessian");
hessianProxy.setServiceInterface(IDataSyncHessian.class);
hessianProxy.afterPropertiesSet();
return (IDataSyncHessian) hessianProxy.getObject();
}
}
分享到:
相关推荐
hessian-demo工程示例,已集成内置jetty插件,可以直接运行。 spring4,hessian4.0.7
spring springmvc hessian rpc客户端及服务端示例demo,可直接运行,适合hessian入门的同学们学习,仅供有需要的同学们参考
这是Hessian和Spring集成的示例,具体步骤请参考本人博客: http://blog.csdn.net/jjasun/article/details/29593083
的各种简单示例,快速入门使用 Spring Boot 各种组件 示例项目 基础部分: :Spring Boot 快速入门 Hello world 示例 :Spring Boot 自定义 Banner (启动图案) :Spring Boot 主题切换 :Spring Boot 简单的服务...
2. Spring 2.0 的新特性 2.1. 简介 2.2. 控制反转(IoC)容器 2.2.1. 更简单的XML配置 2.2.2. 新的bean作用域 2.2.3. 可扩展的XML编写 2.3. 面向切面编程(AOP) 2.3.1. 更加简单的AOP XML配置 2.3.2. 对@AspectJ 切面的...
一个简单的Hessian,简单介绍了Hessian的使用方式,介绍了Hessian和Spring集成的使用方式,以及单独使用Hessian的方式。
spring-amqp-hessian.zip,带Hessian的Spring AMQP上的RPC
hessian学习实例,hessian框架例子,与Spring集成。包括了server端和client端
本文通过实例代码给大家介绍了spring boot整合hessian的方法,需要的朋友可以参考下
hessian+srping 整合示例文档
8.3.5. 示例 8.3.6. 运行集成测试 8.4. 更多资源 II. 中间层数据访问 9. 事务管理 9.1. 简介 9.2. 动机 9.3. 关键抽象 9.4. 使用资源同步的事务 9.4.1. 高层次方案 9.4.2. 低层次方案 9.4.3. ...
8.3.8. PetClinic示例 8.4. 更多资源 II. 中间层数据访问 9. 事务管理 9.1. 简介 9.2. 动机 9.3. 关键抽象 9.4. 使用资源同步的事务 9.4.1. 高层次方案 9.4.2. 低层次方案 9.4.3. ...
Spring Framework 开发参考手册 Rod Johnson Juergen Hoeller Alef Arendsen Colin Sampaleanu Rob Harrop Thomas Risberg Darren Davison Dmitriy Kopylenko Mark Pollack Thierry Templier Erwin ...
8.3.8. PetClinic示例 8.4. 更多资源 II. 中间层数据访问 9. 事务管理 9.1. 简介 9.2. 动机 9.3. 关键抽象 9.4. 使用资源同步的事务 9.4.1. 高层次方案 9.4.2. 低层次方案 9.4.3. ...
本示例是hessian与spring整合的,客户端与服务端相互调用的最完整例子。
6.2.1 Hessian使用演示... 72 6.2.2 几种Remoting实现的比较... 75 6.3 改造HttpInvoker 75 6.3.1 服务文件的分模块化... 82 6.3.2 本地服务加载器... 85 6.4 Remoting Session实现... 87 6.4.1 实现思路... 88 ...
GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....
GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....
简单聊天软件CS模式 2个目标文件 一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 ...
GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....