`

Hessian的学习笔记

阅读更多
1- 整个jar很小,200多K,3.1版本的,当然,我下载的for java的版本.
2- 配置很简单,基本上不需要花什么经历就配置出来了
3- 功能强大,可以将soap抛开,也可以把EJB抛开,采用二进制来传递对象
4- 拥有多种语言支持,python c++  .net 甚至 flex 都可以做为client端
http://hessian.caucho.com/#Java 这里可以下载到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());    
      }
} 










分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics