引用:http://developer.51cto.com/art/201104/256689.htm
SimpleFramework是基于Intercepting-Filter和MVC2模式(我们称之为:后处理模式,After-Processing Pattern),基于“应用即组件,组件即应用(Application are components,the Component can be a application)”的理念采用Java 技术实现的Web应用级框架。
其工作原理为:利用Servlet的过滤器机制,拦截HttpResponse并导向SimpleFramework作“后处理”:分派请求逻辑;依据“组件声明” 生成或渲染组件、生成代码、处理业务规则、重构响应内容等。
如下图所示
![](https://i-blog.csdnimg.cn/blog_migrate/2ed62e6703aa1a57c200f4d32c3e9bc2.png)
主要特性:
框架模式
基于Intercedivting-Filterhe模式实现的MVC2框架,其拦截Redivsonse进行“二次处理”的实质决定了它具备很好的扩展性和支持能力,可适应新技术的增长变化,并兼容已有的Web框架和技术
开放架构
基于规范的组件体系,具备开放的架构,开发人员不仅可增加新的组件,而且可基于现有组件构建复合组件,并定制自己业务组件
整装零用
基于过滤器工作机制和申明式组件元数据定义,又决定了其具备整装零用的应用模式,不仅可以支持Web应用的全程开发装,也可以在其他框架资源和应用的基础上仅引用其部分组件
AJAX支撑
内置AJAX引擎,具备无Javascridivt编程的AJAX支撑能力,并提供抽象实现的AJAX-Request组件,使得AJAX的支持自然流畅、易用
验证支持
支持基于元数据规则式声明的客户端Javascridivt验证
丰富组件
提供丰富的组件,足以支撑Web应用开发所需的方方面面
组合应用
基于已有组件可构建新的复合组件,以及基于组件的复合应用开发
降低难度
基于组件的Web应用开发,降低开发成本、缩短周期,提高效能
业务规则
业务规则定义(Handle)更清晰,不仅是类Struts的Action,并提供缺省实现;基于积累的业务组件,不写代码也可以实现复杂的应用功能
为什么选择SimpleFramework?
降低Web应用开发的复杂度
轻量级的MVC2框架,无Javascript代码的AJAX支持,从某种层面消除了Javscript 的编程复杂度及不稳定性;AJAX使得Web应用的交互性和性能得以提升;内置的资源(样式、图片等)又使Web应用体现为一致的美观程度
丰富的支撑组件库
全程组件化的Web应用开发,降低了成本、缩短了周期、提高了效能
业务规则的清晰定义
提供缺省实现的业务处理类(Handle),超越了Action的范畴
开放的体系架构
基于标准化组件结构,任一开发者都可以按需定制业务相关的组件
非排他的整装零用
由于SimpleFramework的模式特征和工作机理,决定了SimpleFramework可支撑Web应用的全程开发;并且可和现有的Web框架很好的合作,将simpleFramework的部分组件应用到既有的框架应用中
开放源代码和技术团队
基于开放源代码协议的Web应用框架,所以无“代码”之忧;不断奉献的技术团队,将为SimpleFramework文档体系、框架体系、扩展组件资源、支撑能力和应用效能做出贡献
成熟案例
在电力和远洋系统的办公自动化、电信的无线网络优化系统中经过大数据量和大并发用户的实战考验
SimpleFrameworkde以简单贯穿始终的实质是您选择的不二原由:简化过程,组件复用,开发架构,随需应变
发展历程:
SimpleFramework V1:声明式组装HTML的雏形。其出发点是实现工作流引擎的Web客户端,流程引擎中有很多业务接口需要和Web交互,所以采用一种声明的方式来组装业务流程所产生的HTML,以方便在不同的项目中使用
SimpleFramework V2:采用了基于过滤器(Filter)的后处理技术来实现AJAX和组件及其资源处理
SimpleFramework V3:保留Version 2的既有特色,实现了开放的组件体系,基于标准化的组件标准可以所需增加业务相关的组件
![](https://i-blog.csdnimg.cn/blog_migrate/a54c8cd678d47e80fd7558680e9363d6.png)