`
wenxin2009
  • 浏览: 314732 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Hessian实例

    博客分类:
  • java
阅读更多

    Hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能。相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议,因为采用的

 

是二进制协议,所以它很适合于发送二进制数据。与Hessian相同功能的还有Http、TCP/IP+NIO、RMI、WebService。

 

以下是Hessian的一个小例子(下载Hessian jar包):

package com.webservice;

public interface Hello {
	String hello(String name);
}

 

package com.webservice;

public class HelloImpl implements Hello {
	public String hello(String name) {
		return "hello,"+name+"!欢迎学习Hessian";
	}
}

 web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app 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_3_0.xsd"
	version="3.0">
	<display-name>Hessian</display-name>
	<welcome-file-list>
		<welcome-file>/index.jsp</welcome-file>
	</welcome-file-list>
	
	<servlet>
	    <servlet-name>hessianService</servlet-name>
	    <servlet-class>com.caucho.hessian.server.HessianServlet</servlet-class>
		<init-param>
		    <param-name>service-class</param-name>
		    <param-value>com.webservice.HelloImpl</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
	    <servlet-name>hessianService</servlet-name>
	    <url-pattern>/hessianService</url-pattern>
	</servlet-mapping>
	
</web-app>

 

客户端调用:

package com.webservice;
import java.net.MalformedURLException;
import com.caucho.hessian.client.HessianProxyFactory;

public class Client {
	/**
	 * 客户端调用hessian服务
	 * @param args
	 */
	public static void main(String[] args) {
		String url = "http://localhost:8080/hessianService";
		HessianProxyFactory factory = new HessianProxyFactory();
		//获得Hessian服务远程引用
		try {
			Hello hello = (Hello)factory.create(Hello.class, url);
			System.out.println(hello.hello("Dwen"));
		} catch (MalformedURLException e) {
			e.printStackTrace();
		}
	}

}

 

Hessian和Spring整合请见参考:

http://blog.csdn.net/chenweitang123/article/details/6334097

http://lavasoft.blog.51cto.com/62575/191871/

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics