Struts4RCP轻量级MVC框架
1. 简介
Struts(for)RCP是一个适用 于RCP/RIA应用的轻量级MVC框架,与Struts功能相似,提供远程MVC控制器支持,简化模型与视图的交互过程。
- MVC: Model View Controller
- RCP: Rich Client Platform
- RIA: Rich Internet Application
- Struts: 一个适用于Web页面"请求-响应"方式的MVC框架
2. 对比
常规C/S应用中,通常都采用透明化的远程方法调用方 式与服务器端通讯,即:将Service接口同时部署于客户端,并在客户端生成Service接口的Stub实现,通过各种协议代理访问服务器端的 Service实现,此类工具如:RMI, WebService, XML-RPC/JSON-RPC, HttpInvoker等。为什么还要加一层Action控制器?
- 远程调用 Service接口,相当于MVC中的视图直接调用了模型,增加控制器,使职责更清晰。
- Serivce 域模型通常是无状态的,增加远程控制器,管理服务器端状态。
- Service接口粒度过细, 使得业务逻辑向客户端倾斜,产生过多的请求次数,增加控制器,确保大粒度请求。
- 客户端部署 Service接口比较繁琐,增加控制器作为中介者,简化耦合。
- 在控制器层,同样可以实现 透明化调用,用户同样不需要关心交互层面的信息。
- 在控制器中更易于处理天然的(不需要反射 或字节码增强的)AOP截面和事件模型,方便拦截器,转换器,校验器,安全控制等的扩展。
- 对 于大量长期使用Struts的开发人员,转入RCP开发时,更易于理解和使用,降低学习成本。
3. 特性
- 以数据为中心的控制器
- 友好的执行过程拦截器
- 完善的集成扩展点
- 可管理的传输队列
- 全面的事件通知
- 多服务器传输支持
评论