您的位置:首页 > 编程语言 > Java开发

spring整合hessian学习笔记

2009-12-09 19:50 465 查看
最近项目需要用到一些我之前没有接触过的技术点,比如hessian,apache mina, osgi等等。。。这些一步一步学习。

今天花了一点时间学习了hessian。作一下笔记。。hessian用于远程调用,跟之前使用过的rmi差不多。

web.xml:

com.winking.hessian.test.BasicImpl:实现类

<servlet>
<servlet-name>hessainTest</servlet-name>
<servlet-class>com.caucho.hessian.server.HessianServlet</servlet-class>
<init-param>
<param-name>service-class</param-name>
<param-value>com.winking.hessian.test.BasicImpl</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>


<servlet-mapping>
<servlet-name>hessainTest</servlet-name>
<url-pattern>/hessainTest</url-pattern>
</servlet-mapping>


接口类:

public interface Basic {

public String sayHello(Map map);
}


接口实现类:

public class BasicImpl implements Basic {
public BasicImpl() {

}

public String sayHello(Map map) {
return "hello hessian!!!!" + map.get("name") + "    " + map.get("age");
}

}


引用了包含这个接口的jar和hessian.jar。

在applicationContext.xml作为bean配置:

<bean id="helloService"
class="org.springframework.remoting.caucho.HessianProxyFactoryBean">
<property name="proxyFactory">
<bean class="com.caucho.hessian.client.HessianProxyFactory">
<property name="readTimeout" value="10000" />
</bean>
</property>
<property name="serviceUrl" value="http://localhost:8080/winking/hessainTest" />
<property name="serviceInterface"
value="com.winking.hessian.test.Basic" />
</bean>


serviceUrl:是客户端调用的路径,更好的方式是写在properties里。

serviceInterface:就是配置给客户端调用的接口。

然后在service或者controller里引用这个bean,就可以使用了。如果该类返回的是自定义类,那么需要序列化。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: