Hessian是一個簡單的二進制的Web服務方案(其實我覺得它更多的是一種二進制對象傳遞方式),它只需要一個客戶端接口和服務端程序就可以輕松實現程序的遠程調用啦。下面就以Hessian主頁上的例子來show一下這種簡單的RPC應用方案啦
1、在tomcat下創建一個應用test,在其下的WEB-INF/src目錄下編寫以下程序文件。
2、創建服務端程序文件example/BasicService.java,內容如下:package example;
public class BasicService implements Basic { private String _greeting = "Hello, world";
public void setGreeting(String greeting) { _greeting = greeting; }
public String hello() { return _greeting; }}
3、創建一個本地接口,example/Basic.java,內容如下:package example;
public interface Basic { public String hello(); //與服務端的hello方法對應}
4、創建客戶端測試程序,example/BasicClient.java,內容如下:
package example;
import com.caucho.hessian.client.HessianProxyFactory;
public class BasicClient { public static void main(String []args) throws Exception { String url = " HessianProxyFactory factory = new HessianProxyFactory(); Basic basic = (Basic) factory.create(Basic.class, url); System.out.println("Hello: " + basic.hello()); }} 5、修改WEB-INF下的web.xml文件,填充以下內容: <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" " <web-app> <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>example.BasicService</param-value> </init-param> <init-param> <param-name>home-api</param-name> <param-value>example.Basic</param-value> </init-param> </servlet> <servlet-mapping> <url-pattern>/hello</url-pattern> <servlet-name>hello</servlet-name> </servlet-mapping></web-app> 6、啟動tomcat后,運行一下BasicClient類 看一看,是不是輸出以下的內容啦,如果有恭喜你,已經成功創建你的第一個RPC Hessian應用了。> Hello: Hello, world
HessianProxyFactory factory = new HessianProxyFactory(); Basic basic = (Basic) factory.create(Basic.class, url);
System.out.println("Hello: " + basic.hello()); }}
5、修改WEB-INF下的web.xml文件,填充以下內容:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" " <web-app> <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>example.BasicService</param-value> </init-param> <init-param> <param-name>home-api</param-name> <param-value>example.Basic</param-value> </init-param> </servlet>
<servlet-mapping> <url-pattern>/hello</url-pattern> <servlet-name>hello</servlet-name> </servlet-mapping></web-app>
6、啟動tomcat后,運行一下BasicClient類
看一看,是不是輸出以下的內容啦,如果有恭喜你,已經成功創建你的第一個RPC Hessian應用了。> Hello: Hello, world
Powered by: BlogJava Copyright © 海賊