使用hessian简单使用

使用hessian简单实现项目之间的通信

首先建立两个动态工程分别命名为servicepro与clientpro,然后分别导入hessian用到的jar包(hessian-4.0.3.jar)

一、首先对服务端(servicepro工程)进行配置:

1.建立接口与接口实现类

a.创建HessianHelloWorld接口,接口中只有一个target方法

package com.remote;

public interface HessianHelloWorld {
	String target();
}

 b.创建HessianHelloWorldImpl继承HessianServlet并实现HessianHelloWorld接口

package com.remote.impl;

import com.caucho.hessian.server.HessianServlet;
import com.remote.HessianHelloWorld;

public class HessianHelloWorldImpl extends HessianServlet implements
		HessianHelloWorld {
	private static final long serialVersionUID = -489831024851039867L;

	@Override
	public String target() {
		return "target:one piece";
	}

}

 2.修改Web.xml文件,将上面实现的类作为servlet配置到该文件中

<servlet>
  	<servlet-name>remote-service</servlet-name>
  	<servlet-class>com.remote.impl.HessianHelloWorldImpl</servlet-class>
  </servlet>
  
  <servlet-mapping>
  	<servlet-name>remote-service</servlet-name>
  	<url-pattern>/service/remote</url-pattern>
  </servlet-mapping>

配置后该远程访问路径为http://localhost:8080/servicepro/service/remote

完成上述配置后工程的结构如附件:serviceproj-1.jpg

二、接着对客服端(clientpro工程)进行配置

1.在工程下直接创建类HessianClientTest类进行测试

package com.client.remote.test;

import java.net.MalformedURLException;

import com.caucho.hessian.client.HessianProxyFactory;
import com.remote.HessianHelloWorld;

public class HessianClientTest {
	
	public static void main(String[] args) {
			String url = "http://localhost:8080/servicepro/service/remote";
			HessianProxyFactory factory = new HessianProxyFactory();
			HessianHelloWorld hello = null;
			try {
				hello = (HessianHelloWorld) factory.create(HessianHelloWorld.class, url);
			} catch (MalformedURLException e) {
				e.printStackTrace();
			}
			System.out.println(hello.target());
		}
}

 此处需要注意的是HessianHelloWorld接口的使用,接口的引入方式有如下:

a.接口可以通过工程引入的方式从servicepro工程中引入该接口,选中clientpro右击-->build path -->configure build path 弹出对话框选择project项添加servicepro即可

b.通过将servicepro打包成jar并添加到clientpro工程路径下。

c.还有就是在客户端(clientpro工程)建立包含相同方法的接口,接口的名字可以任意但接口中的方法必须一致,一般便于管理接口命名都相同。

首选前两种方法,在开发阶段通过工程引入的方式获取这些接口,若接口功能已经确定也可以选择将需要用到的接口打包成jar并引入客户端,jar文件中只包含接口即可

 完成上述配置后工程的结构如附件:clientproj-1.jpg

猜你喜欢

转载自tom-seed.iteye.com/blog/1566668