首页 > 代码库 > Hessian 调用流程
Hessian 调用流程
服务端流程
采用spring mvc+hessian形式,解析请求处理器使用BeanNameUrlHandlerMapping.
1.创建一个类OurServiceExporter,继承HessianExporter类,实现HttpRequestHandler接口(spring mvc),
2.将请求转发至OurServiceExporter这个类,并配置service以及serviceInterface属性:
3. 请求进来后,调用父类HessianExporter的invoke方法,将request的输入流以及输出流作为参数传入.
4.在初始化HessianExporter的时候,会预先创建HessianSkeleton,并把传入一个代理service(spring的ProxyFactory实现代理)以及serviceInterface作为构造参数
5. HessianExporter的invoke方法将输入流转换为AbstractHessianIuput(暂命为in),将输出流转换为AbstractHessianOutput(暂命为out),设置输入流输出流的序列化实现类,调用HessianSkeleton的invoke方法
6.HessianSkeleton的invoke方法,从in读取方法名method,参数长度,并将参数反序列化,使用method.invoke调用方法,并将返回值使用out写回
具体细节,还得多看看源码,这里只是粗略的流程,写得不好,请担待。
Hessian 调用流程
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。