HESSIAN的技术实现简介
基本介绍 Hessian 是一个轻量级的 remoting onhttp 工具,使用简单的方法提供了 RMI 的功能。采用二进制 RPC 协议进行数据传输。 实现原理 Hessian 依托 HTTP 协议,在其上发送二进制数据信息,其使用的 ContentType 为 x-application/hessian。 客户端代理用户的请求,将调用的方法和参数值进行二进制编码,通过指定的URL打开HTTP连接,将数据传输到服务器端。服务器端URL对应的Servlet接收到数据后,进行解析,交给具体实现类完成调用,然后将返回值编码发回客户端。 客户端实现 通过HessianProxyFactory.create()方法,产生用户指定Interface的实例。具体实例的实现由JDK的Proxy代理机制来负责。在Proxy生成实例时,传入的InvocationHandler接口实例为HessianProxy。 当客户端调用时,所有的操作都由HessianProxy来负责:主要是将调用的方法、参数写入到URL指定的连接中。然后对返回的数据进行解析,返回给用户。 其主要方法实现: public Object invoke(Object proxy, Method method, Object []args) { .... conn = sendRequest(mangleName, args);