- 浏览: 675467 次
- 性别:
- 来自: 深圳
最新评论
-
fingerplay:
请问一下,第一份,逻辑树,就是代码里可以操纵的,例如更改lay ...
UIView与CALayer -
ok_lyc:
分享到哪里去了
iPhoneUIFont各种字体 -
lliiqiang:
我的个人理解:wait方法是在java虚拟机层面上在获取对象锁 ...
JAVA多线程同步wait、notify、synchronized -
milixw:
谢谢分享,就在找这个
iphone 推送通知 java 实现 -
wsqwsq000:
你的log4j包不行,上网搜一下:log4j-1.2.16.j ...
iphone 推送通知 java 实现
Hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能. 相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据 Hessian 介绍 注意事项 在进行基于Hessian的项目开发时,应当注意以下几点: ·包含Hessian的jar包 ·设计一个接口,用来给客户端调用 ·实现该接口的功能 ·配置web.xml,配好相应的servlet ·对象必须实现Serializable 接口 ·对于复杂对像可以使用Map的方法传递 ·java客户端包含Hessian.jar的包。C#中引用hessianCSharp.dll ·具有和服务器端结构一样的接口。包括命名空间都最好一样 ·利用HessianProxyFactory调用远程接口。 简单JAVA客户端例子: 服务器端 新建一个名EasyHession的webProject项目,将Hessian.jar放入web-inf下的lib中 创建接口: packageapp.demo; public interfaceBasicAPI { public void setGreeting(Stringgreeting); public String hello(); public User getUser(); } 实现接口: packageapp.demo; publicclass BasicService implements BasicAPI { privateString _greeting = "Hello, world"; public void setGreeting(String greeting) { _greeting = greeting; System.out.println("set greetingsuccess:"+_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 StringgetUserName() { returnuserName; } public StringgetPassword() { returnpassword; } } 接下来是配置web.xml <?xml version="1.0"encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <servlet> <servlet-name>hello</servlet-name> <servlet-class>com.caucho.hessian.server.HessianServlet</servlet-class> <init-param> <param-name>service-class</param-name> <param-value>app.demo.BasicService</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>hello</servlet-name> <url-pattern>/hello</url-pattern> </servlet-mapping> </web-app> 为了测试可以在编辑一个简单的test.jsp <%@ pageimport="com.caucho.hessian.client.HessianProxyFactory, app.demo.BasicAPI"%> <%@page language="java"%> <% 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 服务器上去,可以是Tomcat,Rain等等。 进入 结果如下: Hello: Hello, world Hello: snoopy Hello: showme 说明服务器端已经编写成功。 java客户端 创建一个名为HessianClient的JAVAProject,载入hessian.jar包 创建与服务器端一样的接口,及基础类 public interface BasicAPI{ public void setGreeting(Stringgreeting); 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 StringgetUserName() { returnuserName; } public StringgetPassword() { returnpassword; } } 创建客户端程序 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"; HessianProxyFactoryfactory = new HessianProxyFactory(); BasicAPIbasic = (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
JAVA服务器端必须具备以下几点:
客户端必须具备以下几点:
发表评论
-
google开放的maps api接口
2012-01-12 22:51 1171google开放的Maps api接口,包括很多版 ... -
iphone中请求对应的Mime type
2011-09-21 10:03 2246Extension MIME type Desc ... -
Sina微博开放平台获得App key和App secret
2011-08-20 18:01 2204最近由于需要调用微博开放接口,花点时间研究。刚上手,希望与 ... -
HttpURLConnection调用服务器,servlet中request.getInputStream为空
2011-08-18 14:01 2070HttpURLConnection调用服务器,servlet中 ... -
求质数的算法
2011-07-09 21:22 3431求i到j之间的所有质数最笨的一种方法是把i到j之间的每一个数n ... -
saveToken(request)
2011-07-09 21:21 1025Struts的Token(令牌)机制能够很好的解决表单重复提交 ... -
Method类invoke方法的使用
2011-07-09 21:20 2343java.lang.reflect.Methodpubli ... -
Hibernate的session.flush做了什么呢?
2011-07-09 21:20 941这是在一次事务提交 ... -
HttpInvoker远程调用实例
2011-07-09 21:18 1140一、服务器端: 1、服务接口与实现类 ... -
几种通讯协议的比较
2011-07-09 21:18 905一、综述 本文比较了RM ... -
序列化
2011-07-09 21:17 1124无意当中想到这个问题,然后google 一下。找到一篇对 s ... -
对象的序列化和反序列化
2011-07-09 21:17 1008当两个进程在进行远 ... -
spring机制
2011-07-09 21:17 1130提到spring,第一印象就是DI与IOC,虽然有概念上的 ... -
如何让页面自动加载js文件
2011-07-09 21:16 2486打开页面时,对比缓存中js中是否有需要加载的js,如果有直 ... -
ajax的xmlhttp
2011-07-09 21:15 1006什么是xmlhttp一种浏览器不离开页面主动向服务器请求数据的 ... -
vo,bo,po,dto,dao,pojo
2011-07-09 21:15 1399vo,bo,po,dto,dao,pojo PO: ... -
Hql传中文参数出现乱码解决办法
2011-07-09 21:15 1128Hql传中文参数出现乱码(同sql传中文参数出现乱码一样): ... -
js四舍五入
2011-07-09 21:14 1272/* * 四舍五入的相关问题 */ / ... -
Session.Clear()、Session.Abandon()的区别
2011-07-09 21:13 1763Session.Clear()就是把Session对象中的 ... -
HttpServlet单实例多线程的探讨
2011-07-09 21:13 16341、HttpServlet默认是单实例多线程的2、网上一直 ...
相关推荐
赠送jar包:hessian-4.0.63.jar; 赠送原API文档:hessian-4.0.63-javadoc.jar; 赠送源代码:hessian-4.0.63-sources.jar; 赠送Maven依赖信息文件:hessian-4.0.63.pom; 包含翻译后的API文档:hessian-4.0.63-...
赠送jar包:hessian-3.3.6.jar; 赠送原API文档:hessian-3.3.6-javadoc.jar; 赠送源代码:hessian-3.3.6-sources.jar; 赠送Maven依赖信息文件:hessian-3.3.6.pom; 包含翻译后的API文档:hessian-3.3.6-javadoc-...
赠送jar包:hessian-3.3.6.jar 赠送原API文档:hessian-3.3.6-javadoc.jar 赠送源代码:hessian-3.3.6-sources.jar 包含翻译后的API文档:hessian-3.3.6-javadoc-API文档-中文(简体)-英语-对照版.zip 对应Maven...
赠送jar包:hessian-4.0.63.jar; 赠送原API文档:hessian-4.0.63-javadoc.jar; 赠送源代码:hessian-4.0.63-sources.jar; 赠送Maven依赖信息文件:hessian-4.0.63.pom; 包含翻译后的API文档:hessian-4.0.63-...
编译的方法,例如:使用VisualStudio2010/.NET4环境,首先用VS2010生成一个空的WEB项目,删除项目里web.config等无关文件,再将Hessian的burlapcsharp、hessiancsharp两个文件夹复制、粘贴到项目中,最后编译生成DLL...
多尺度hessian滤波器,图像增强,参考frangi的论文
dubbo-hessian协议http请求demo
hessian是一个轻量级的Java Remoting方案
Hessian一般是通过Web应用来提供服务,因此非常类似于平时我们用的 WebService。只是它不使用SOAP协议,但相比webservice而言更简单、快捷。这个文件可以是hessian在spring项目和web项目的简单配置
该案例有hessian java python,该案例有hessian java python,该案例有hessian java python
Hessian多个版本下载,包括Hessian3.1.6,Hessian3.2.1,Hessian4.0.7
基于Hessian的冠状动脉血管造影分割方法
基于matlab使用 hessian 特征值增强 2D3D 图像中的血管脊状结构
hessian源码
基于java实现hessian进行服务器之间数据交互demo项目 实现功能: 1.基于spring 2.5.6+hessian3.1.6带有签名安全机制 2.基于servlet代理机制实现HessianServlet,进行简单IP地址校验功能!
针对Harris-Laplace、Hessian-Laplace等角点检测算法重复率低、易漏检以及实时性差等问题,在充分研究Harris-Laplace、Hessian-Laplace和图像像素间的相似性的基础上,提出了一种具有亚像素精度的仿Hessian-Laplace...
Hessian android客户端异步请求访问包
hessian 服务端 客户端 可运行
一个简单的Hessian,简单介绍了Hessian的使用方式,介绍了Hessian和Spring集成的使用方式,以及单独使用Hessian的方式。
Hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能。 相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据。参考文档地址...