简单Spring+hessian

标签: spring hessian | 发表时间:2014-01-02 14:26 | 作者:a4560653
分享到:
出处:http://www.iteye.com
<div class="iteye-blog-content-contain" style="font-size: 14px">
简单的Spring+hessian
           
Jar包:
dist\modules里面的 spring-webmvc.jar 
lib\caucho 里面的hessian-3.1.3.jar
Server:
里面有个接口interface:
public interface IBasic {

public String helloWorld();
public User getUser();
}
接口的实现:
public class IBasicServer implements IBasic {
@Override
public String helloWorld() {
return "hello world!!";
}
@Override
public User getUser() {
User user =new User();
user.setName("nie");
user.setPassword("123");
return user;
}
}
建立一个model层:(实现Serializable接口)
public class User implements Serializable {

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
private String name;
private String password;
}

Web.xml里面配置:
<servlet>
    <servlet-name>remoting</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
 
<servlet-mapping>
    <servlet-name>remoting</servlet-name>
    <url-pattern>/remoting/*</url-pattern>
</servlet-mapping>

在WEB-INF下面创建一个remoting-servlet.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="accountService" class="nie.wei.qing.Server.implment.IBasicServer">
</bean>

<bean name="/AccountService" class="org.springframework.remoting.caucho.HessianServiceExporter">
    <property name="service" ref="accountService"/>
    <property name="serviceInterface" value="nie.wei.qing.Server.IBasic"/>
</bean>

</beans>



客户端同样的要有interface  IBasic  和model层  User(实现Serializable接口)
在src下面建立一个remote-client.xml
<bean id="accountService" class="org.springframework.remoting.caucho.HessianProxyFactoryBean">
    <property name="serviceUrl" value="http://localhost:8080/Hissian-Server/remoting/AccountService"/>
    <property name="serviceInterface" value="nie.wei.qing.Server.IBasic"/>
</bean>

使用JUnit来测试;测试代码:
try
{
ApplicationContext context = new ClassPathXmlApplicationContext("remote-client.xml");

IBasic basic =(IBasic)context.getBean("accountService");

System.out.println(basic.helloWorld());
}
catch (Exception e)
{
e.printStackTrace();
}</div>

已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [spring hessian] 推荐:

简单Spring+hessian

- - Web前端 - ITeye博客
简单的Spring+hessian. dist\modules里面的 spring-webmvc.jar . lib\caucho 里面的hessian-3.1.3.jar. 里面有个接口interface:. 建立一个model层:(实现Serializable接口). 在WEB-INF下面创建一个remoting-servlet.xml:.

Hessian和Spring整合

- - CSDN博客推荐文章
    上篇文章简单的介绍了Hessian以及它的一些执行原理,现在我们来看看它与强大框架spring的集成吧. 一、服务端使用spring,我们得下载Hessian支持包和Spring的相应的jar包,可以在我的资源库中进行免费下载:. 1、新建web工程,我取名为HessianSpringServer,在web/WEB-INFO/BIN中导入我们相应的jar包,跟上篇文章一样,编写我们的实体类和接口类、以及接口实现类:.

Hessian, CXF, Spring httpinvoke 对比

- - Java - 编程语言 - ITeye博客
做了一个 Hessian, CXF, Spring httpinvoke 速度对比. 时间消耗  cxf > spring httpinvoke > hessian. 并发为10, 调用1W次所耗时间. 当然, 都知道 cxf 和 hessian 实现以及应用场景不太一样, 但差这么多还是很意外的.

Hessian原理

- - 互联网 - ITeye博客
Hessian 原理分析. 一.      远程通讯协议的基本原理. 二.      应用级协议 Binary-RPC. Binary-RPC 是一种和 RMI 类似的远程调用的协议,它和 RMI 的不同之处在于它以标准的二进制格式来定义请求的信息 ( 请求的对象、方法、参数等 ) ,这样的好处是什么呢,就是在跨语言通讯的时候也可以使用.

Hessian介绍及简单应用

- - Java - 编程语言 - ITeye博客
一、首先先说Hessian是什么.     Hessian:hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能,相比WebService,Hessian更简单、快捷. 采用的是二进制RPC协议,因为采用了二进制协议,所以它很适合于发送二进制数据,Hessian主要作面向对象的消息通信.

Android项目快速开发框架探索(Mysql + OrmLite + Hessian + Sqlite)

- - 博客园_首页
结合之前所用的ormlite和hessian,再加上SAE已经支持JAVA,把服务端切换到JAVA,也就有了本文. 使用hessian来做数据传输,ormlite来实现客户端与服务端的数据存储,极大的减少了CRUD工作. 本文为探索贴,未正式用于大型项目,欢迎大家讨论使用.   欢迎转载,但请保留文章原始出处:).

序列化框架比较:kryo & hessian & Protostuff & java

- - zzm
序列化框架性能对比(kryo、hessian、java、protostuff). 无需静态编译,但序列化前需预先传入schema. 不支持无默认构造函数的类,反序列化时需用户自己初始化序列化后的对象,其只负责将该对象进行赋值. 测试方法:(参考自 https://github.com/eishay/jvm-serializers).

基于hessian和netty的RPC框架设计和实现

- - Java - 编程语言 - ITeye博客
基于hessian和netty的RPC框架设计和实现.         对系统进行服务化改造,或者构建一个分布式系统,RPC是核心的组件,目前主流的RPC框架有hessian\thrift\ avro等,如果不考虑跨语言的话thrift\ avro使用起来稍显复杂,要写IDL序列化配置,hessian又依赖servlet容器,于是使用netty和hessian构建了一个的RPC框 架.

Spring MVC 和 Struts2

- - CSDN博客架构设计推荐文章
Web层面的框架学习了三个Struts1和2,SpringMVC,那他们之间肯定存在一个优劣和适用的环境,Struts1和2的异同点我已经做过对比《 Struts1和Struts2》,这篇将对比下Struts2和SpringMVC的异同,下面数据基本来源于网络,本人是搜集整理所得,供大家参考. 一个项目使用什么样的技术,决定的因素很多,我所能想到的有:对系统的性能、开发的效率、团队学习的成本、业务场景等,下面尽量从这几个方面入手,来分析比较下他们之间存在的优劣.

Spring详解

- - CSDN博客架构设计推荐文章
Spring是一个开源的控制反转(Inversion of Control ,IoC)和面向切面(AOP)的容器框架.它的主要目的是简化企业开发.. PersonDaoBean 是在应用内部创建及维护的. 所谓控制反转就是应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部容器负责的.