1- 整个jar很小,200多K,3.1版本的,当然,我下载的for java的版本.
2- 配置很简单,基本上不需要花什么经历就配置出来了
3- 功能强大,可以将soap抛开,也可以把EJB抛开,采用二进制来传递对象
4- 拥有多种语言支持,python c++ .net 甚至 flex 都可以做为client端
[url]http://hessian.caucho.com/#Java[/url] 这里可以下载到for java的版本
任意JAVA的IDE新建一个JAVA WEB工程
先建一个javabean
将下载的.jar包引入工程中,创建一个接口,这个接口可以供客户端和服务器端使用如下:
当然接口中用到的Car 这个类是自己定义的包含任何属性的标准JAVABEAN;
接下来我们就开始做service端的程序了:
服务器端的程序写好后,要让client能够通过http协议访问到我们的service还需要配置servlet,当然这个过程是很简单的
只需要将上面的代码加入到你的WEB.XML文件中,当然包路径是你自己的路径而已.
这时服务器段的工作就已经全部完成了.
接下来我们在做client端的工作,client需要用到IBasic 这个接口,还需要用到 Car 这个类
可以做一个简单的测试:
2- 配置很简单,基本上不需要花什么经历就配置出来了
3- 功能强大,可以将soap抛开,也可以把EJB抛开,采用二进制来传递对象
4- 拥有多种语言支持,python c++ .net 甚至 flex 都可以做为client端
[url]http://hessian.caucho.com/#Java[/url] 这里可以下载到for java的版本
任意JAVA的IDE新建一个JAVA WEB工程
先建一个javabean
package com.wangyu;
public class Car implements java.io.Serializable {
private String Color;
private String Length;
private String Name;
public String getColor() {
return Color;
}
public void setColor(String color) {
Color = color;
}
public String getLength() {
return Length;
}
public void setLength(String length) {
Length = length;
}
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
}
将下载的.jar包引入工程中,创建一个接口,这个接口可以供客户端和服务器端使用如下:
package com.wangyu;
public interface IBasic {
/**
* 测试字符串
* @return
*/
public String hello();
/**
* 取一辆汽车 测试对象传递
* @return
*/
public Car getCar();
}
当然接口中用到的Car 这个类是自己定义的包含任何属性的标准JAVABEAN;
接下来我们就开始做service端的程序了:
package com.wangyu;
public class BasicService implements IBasic {
private String hello = "Hello, world";
public String hello() {
return hello;
}
public Car getCar() {
Car car = new Car();
car.setColor("RED红色");
car.setLength("2400");
car.setName("HAHACHE");
return car;
}
}
服务器端的程序写好后,要让client能够通过http协议访问到我们的service还需要配置servlet,当然这个过程是很简单的
<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.wangyu.BasicService</param-value>
</init-param>
<init-param>
<param-name>home-api</param-name>
<param-value>com.wangyu.IBasic</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
只需要将上面的代码加入到你的WEB.XML文件中,当然包路径是你自己的路径而已.
这时服务器段的工作就已经全部完成了.
接下来我们在做client端的工作,client需要用到IBasic 这个接口,还需要用到 Car 这个类
可以做一个简单的测试:
package com.wangyu;
import com.caucho.hessian.client.HessianProxyFactory;
public class BasicClient {
public static void main(String []args)
throws Exception
{
String url = "http://localhost:8080/hessian/hello";
HessianProxyFactory factory = new HessianProxyFactory();
IBasic basic = (IBasic) factory.create(IBasic.class, url);
Car car = basic.getCar();
System.out.println("Hello: " + basic.hello());
System.out.println("Hello: " + car.toString());
}
}