作者:empty 出版社:empty |
快速认识RopRop是Rapid Open Platform的简称, 它不同于一般纯技术型的We h Service框架(如C XF, Jersey等) , Rop致力于构建服务开放平台的框架, 您可以使用Rop开发类似于淘宝服务开放平台这样的服务平台.Rop充分借鉴了当前大型网站的服务开放平台的设计思路,汲取了它们成功的实践经验,对服务开放平台的很多应用层领域问题给出了解决方案,开发者可以直接使用这些解决方案,也可以在此基础上进行个性化扩展:
1概述Rop功能架构C XF和Jersey是纯技术纯的WebService框架, 而在Rop中, WebService只是核心,它提供了开发服务平台的诸多领域问题的解决方案;如应用认证、会话管理、安全控制、错误模型、版本管理、超时限制等.下面通过图1了解一下Rop框架的整体结构:从图1中, 可以看到Rop所提供的大部分功能都是偏“应用层”的, 传统技术型的WebService框架是不会越到这些“应用层 的问题的, 但是, 在实际开发中, 这些应用层的问题不但不可避免,而且非常考验开发者的设计经验,此外,这些工作还会占用较大的开发工作量。Rop力图让开发者从这些复杂的工作中解脱出来, 让他们可以真正聚焦服务平台业务逻辑的实现上,Rop技术架构Rop在技术实现上充分借鉴了S prng MVC的框架设计理念和实现技术, 首先Rop Servlet类似于Spring MVC的Dispatcher Servlet, 是Rop的门面Servlet.负责截获HTTP服务请求转由Rop框架处理。具体技术架构通过图2描述:298Service Router是Rop框架的核心, 它负责协调各组件的交互井最终完成服务处理的工作,Rop Servlet在启动时会从S prng容器中搜索出Service Router的Bean实例并注册之将服务请求封装成一个的Rop Request Context对象, Rop Request Context包含了服务请求的所有信息.而后, Service Router使用SecurityManager检查服务请求的安全性, 只有通过了SecurityManager的安全检查, 才会调用目标服务处理方法执行服务, 否则将阻止请求并返回错误响应信息,
Rop的配置信息统一在Spring配置文件中通过rop Schema命名空间定义.在服务请求到达后, Rop Servlet截获请求并转交给Service Router处理, Service Router完成SecurityManager的安全检查后, Service Router通过Service Method Adapter对目标的服务方法发起调用,由于具体服务方法的签名各不相同,因此必须采用反射机制进行适配调用, 当返回响应对象后, Service Router使用Rop Marshaller将响应对象编组为特定的响应报文返回给客户端。回顾一个第7章的7.1小节, 您会发现Rop的顶级框架接类在Spring MVC中都能找到对应的对象:Rop Servlet对应Dispatcher Servlet, Service Method Adapter对应Handler Adapter, Rop Marshaller对应View Resolver, 而Service Router承担了Handler Mapping和部分Dispatcher Servlet的角色。因此, 如果您在学习Spring MVC的框架后, 理解Rop框架的实现原理将变得非常轻松。