建网站费用,网站网站建设报价,wordpress投稿申请,房地产型网站建设报价Hessian Hessian是一个轻量级的remoting onhttp工具#xff0c;使用简单的方法提供了RMI的功能。 相比WebService#xff0c;Hessian更简单、快捷。采用的是二进制RPC协议#xff0c;因为采用的是二进制协议#xff0c;所以它很适合于发送二进制数据目 录 1介绍 1.1 注意事… Hessian Hessian是一个轻量级的remoting onhttp工具使用简单的方法提供了RMI的功能。 相比WebServiceHessian更简单、快捷。采用的是二进制RPC协议因为采用的是二进制协议所以它很适合于发送二进制数据 目 录 1介绍 1.1 注意事项 1.2 服务器端 1.3 java客户端 1.4 创建客户端程序 2网游 2.1 简介 2.2 公开新的游戏内容 3矩阵 1介绍 注意事项 在进行基于Hessian的项目开发时应当注意以下几点 ▲JAVA服务器端必须具备以下几点 ·包含Hessian的jar包 ·设计一个接口用来给客户端调用 ·实现该接口的功能 ·配置web.xml配好相应的servlet ·对象必须实现Serializable 接口 ·对于复杂对象可以使用Map的方法传递 ▲客户端必须具备以下几点 ·java客户端包含Hessian.jar的包。C#中引用hessianCSharp.dll ·具有和服务器端结构一样的接口。包括命名空间都最好一样 ·利用HessianProxyFactory调用远程接口。 简单JAVA客户端例子 服务器端 新建一个名EasyHession的webProject项目,将Hessian.jar放入web-inf下的lib中 创建接口 package app.demo; public interface BasicAPI { public void setGreeting(String greeting); public String hello(); public User getUser(); } 实现接口 package app.demo; public class BasicService implements BasicAPI { private String _greeting Hello, world; public void setGreeting(String greeting) { _greeting greeting; System.out.println(set greeting success:_greeting); } public String hello() { return _greeting } public User getUser() { return new User(prance, meshow); } } 创建一个实现Serializable的projo类也可以是Bean。 package app.demo; import java.io.Serializable; public class User implements Serializable{ String userName snoopy; String password showme; public User(Stringuser, String pwd) { this.userName user; this.password pwd; } public String getUserName() { return userName; } public String getPassword() { return password; } } 接下来是配置web.xml ?xml version1.0encodingUTF-8? web-app version2.4 xmlnshttp://java.sun.com/xml/ns/j2ee xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xsi:schemaLocationhttp://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd servlet servlet-namehello/servlet-name servlet-classcom.caucho.hessian.server.HessianServlet/servlet-class init-param param-nameservice-class/param-name param-valueapp.demo.BasicService/param-value /init-param /servlet servlet-mapping servlet-namehello/servlet-name url-pattern/hello/url-pattern /servlet-mapping /web-app 为了测试可以在编辑一个简单的test.jsp % pageimportcom.caucho.hessian.client.HessianProxyFactory, app.demo.BasicAPI% %page languagejava% % HessianProxyFactory factory newHessianProxyFactory(); String url (http:// request.getServerName() : request.getServerPort() request.getContextPath() /hello); out.println(url); BasicAPI basic (BasicAPI) factory.create(BasicAPI.class,url); out.println(Hello: basic.hello()); out.println(Hello: basic.getUser() .getUserName() ); out.println(Hello: basic.getUser().getPassword() ); % 将一切配置成功后将项目发布到web 服务器上去,可以是TomcatRain等等。 进入 结果如下 Hello: Hello, world Hello: snoopy Hello: showme 说明服务器端已经编写成功。 java客户端 创建一个名为HessianClient的JAVAProject载入hessian.jar包 创建与服务器端一样的接口及基础类 public interface BasicAPI{ public void setGreeting(String greeting); public String hello(); public User getUser(); } import java.io.Serializable; public class User implements Serializable{ String userName snoopy; String password showme; public User(Stringuser, String pwd) { this.userName user; this.password pwd; } public String getUserName() { return userName; } public String getPassword() { return password; } } 创建客户端程序 importcom.caucho.hessian.client.HessianProxyFactory; public class BasicClient { public static void main(String[] args) throwsException { String url http://127.0.0.1:8080/Hessian/hello; HessianProxyFactory factory new HessianProxyFactory(); BasicAPI basic (BasicAPI) factory.create(BasicAPI.class, url); System.out.println(Hello: basic.hello()); System.out.println(Hello: basic.getUser().getUserName()); System.out.println(Hello: basic.getUser().getPassword()); basic.setGreeting(HelloGreeting); System.out.println(Hello: basic.hello()); } } 运行结果 Hello: Hello, world Hello: prance Hello: meshow Hello: Hello Greeting 转载于:https://www.cnblogs.com/yangkai-cn/p/4017257.html