Hessian是一个Web Service的轻量级二进制协议,使用起来比较简单。
随着信息技术的发展,不同语言或平台系统之间的交互越来越多,普通Web Service使用起来会比较复杂,Hessian相对简单。
下面介绍下使用Hessian实现异构系统之间的数据交互:
Hessian构建服务和客户端一般需要如下四个步骤:
1. 定义接口API
2. 服务端实现-实现接口
3. 客户端实现-HessianProxyFactory
4. 在serlvet容器中配置服务
[size=medium]一、新建maven web工程,在pom.xml中加入hessian依赖:[/size]
[size=medium]二、接口API:[/size]
[size=medium]三、服务端实现:[/size]
[size=medium]在web.xml加入:[/size]
[size=medium]四、客户端实现:[/size]
启动web工程,查看是否报错。
启动BasicClient,查看控制台输出的信息。
随着信息技术的发展,不同语言或平台系统之间的交互越来越多,普通Web Service使用起来会比较复杂,Hessian相对简单。
下面介绍下使用Hessian实现异构系统之间的数据交互:
Hessian构建服务和客户端一般需要如下四个步骤:
1. 定义接口API
2. 服务端实现-实现接口
3. 客户端实现-HessianProxyFactory
4. 在serlvet容器中配置服务
[size=medium]一、新建maven web工程,在pom.xml中加入hessian依赖:[/size]
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.john.hessian</groupId>
<artifactId>hessian</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>hessian Maven Webapp</name>
<url>http://maven.apache.org</url>
<properties>
<junit.version>4.10</junit.version>
<hessian.version>4.0.7</hessian.version>
<logback.version>1.0.11</logback.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.caucho</groupId>
<artifactId>hessian</artifactId>
<version>${hessian.version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${logback.version}</version>
</dependency>
</dependencies>
<build>
<finalName>hessian</finalName>
</build>
</project>
[size=medium]二、接口API:[/size]
public interface BasicAPI {
String hello();
}
[size=medium]三、服务端实现:[/size]
public class BasicService implements BasicAPI {
private String _greeting = "Hello world!";
public void setGreeting(String greeting) {
this._greeting = greeting;
}
@Override
public String hello() {
return _greeting;
}
}
[size=medium]在web.xml加入:[/size]
<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>com.john.hessian.impl.BasicService</param-value>
</init-param>
<init-param>
<param-name>home-api</param-name>
<param-value>com.john.hessian.intf.BasicAPI</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
[size=medium]四、客户端实现:[/size]
public class BasicClient {
static final String url = "http://localhost/hessian/hello";
public static void main(String[] args) throws MalformedURLException {
HessianProxyFactory factory = new HessianProxyFactory();
BasicAPI basic = (BasicAPI) factory.create(BasicAPI.class, url);
System.out.println("hello(): " + basic.hello());
}
}
启动web工程,查看是否报错。
启动BasicClient,查看控制台输出的信息。