昨天发现有这样的好东西!研究了一下,发现很不错!介绍个大家学习学习,而且这个资料比较少,希望能让大家入门了!
定义一个接口
package study.hessian;
public interface IBasic {
public String hello();
public Person getPerson();
}
一个接口的实现类
package study.hessian;
public class BasicService implements IBasic {
private String hello= "Hello, Vincent";
public String hello()
{
return hello;
}
public Person getPerson() {
Person person = new Person();
person.setColor("Yello");
person.setLength("176cm");
person.setName("vincent");
return person;
}
}
定义一个实体,必须实现序列化接口,因为要通过网络传输
package study.hessian;
import java.io.Serializable;
public class Person implements Serializable{
private static final long serialVersionUID = 3276641446246664L;
private String name;
private String length;
private String color;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLength() {
return length;
}
public void setLength(String length) {
this.length = length;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
}
web.xml文件
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <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>study.hessian.BasicService</param-value> </init-param> <init-param> <param-name>home-api</param-name> <param-value>study.hessian.IBasic</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>hello</servlet-name> <url-pattern>/hello</url-pattern> </servlet-mapping> </web-app>
客户端的类
package study.hessian;
import com.caucho.hessian.client.HessianProxyFactory;
public class BasicClient {
public static void main(String []args)
throws Exception
{
String url = "http://127.0.0.1:8080/WorkTest/hello";
HessianProxyFactory factory = new HessianProxyFactory();
IBasic basic = (IBasic) factory.create(IBasic.class, url);
System.out.println(basic);
Person person = basic.getPerson();
System.out.println("Hello: " + basic.hello());
System.out.println("Hello: " + person.toString());
}
}
String url = http://127.0.0.1:8080/WorkTest/hello;
WorkTest 工程名字
在http://hessian.caucho.com 下载一个 hessian.jar文件倒到工程就可以了!