一、简单实用hessian
hessian同众多的web service框架一样,采用的是接口方式编程。
1、定义接口
public interface BasicAPI {
public String hello();
}
2、定义实现类
public class BasicService extends HessianServlet implements BasicAPI {
private static final long serialVersionUID = 12345245778342L;
private String _greeting = "Hello, world";
public void setGreeting(String greeting)
{
_greeting = greeting;
}
public String hello()
{
return _greeting;
}
}
3、配置web.xml
<servlet>
<servlet-name>Hello</servlet-name>
<servlet-class>com.caucho.hessian.server.HessianServlet</servlet-class>
<init-param>
<param-name>home-class</param-name>
<param-value>package.BasicService</param-value>
</init-param>
<init-param>
<param-name>home-api</param-name>
<param-value>package.BasicAPI</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Hello</servlet-name>
<url-pattern>/Hello</url-pattern>
</servlet-mapping>
4、访问方式
String url = "http://[IP]:[prot]/[projectName]/Hello";
HessianProxyFactory factory = new HessianProxyFactory();
try {
BasicAPI hello =(BasicAPI )factory.create(BasicAPI.class,url);
System.out.println(hello.hello());
} catch (MalformedURLException e) {
e.printStackTrace();
}
二、Spring 整合hessian
1、web.xml配置
<servlet>
<servlet-name>Hessian</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Hessian</servlet-name>
<url-pattern>/hessian/*</url-pattern>
</servlet-mapping>
2、spring bean配置
<!-- Hessian spring bean -->
<bean id="ApiServiceBean" class="package.BasicService"></bean>
<bean name="/hessianService" class="org.springframework.remoting.caucho.HessianServiceExporter">
<property name="serviceInterface">
<value>package.BasicAPI</value>
</property>
<property name="service" ref="ApiServiceBean"/>
</bean>