Struts 2是Struts的下一代产品.是在 struts 和WebWork的技术基础上进行了合并,全新的Struts 2框架.其全新的Struts 2的体系结构与Struts 1的体系结构的差别巨大.Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也业务逻辑控制器能够与Servlet API完全脱离开,Struts 2可以理解为WebWork的更新产品.
Struts和Webwork同为服务于Web的一种MVC框架,从某种程度上看,Struts2是从WebWork2上升级得到的.甚至Apache的官方文档也讲:WebWork2到Struts2是平滑的过渡.我们甚至也可以说Struts2就是WebWork2.3而已.在很多方面Struts仅仅是改变了WebWork下的名称.Struts2对应的有自己的标签,并且功能强大.Webwork也有自己的标签.
在很多方面,Struts 2仅仅是改变了WebWork下的名称,因此,如果开发者具有WebWork的开发经验,将可以更加迅速地进入Struts 2的开发领域.
下面是Struts 2与WebWork命名上存在改变.
Struts 2和WebWork成员名称的对应表:
除此之外,Struts 2也删除了WebWork中少量特性:
AroundInterceptor:Struts 2不再支持WebWork中的AroundInterceptor.如果应用程序中需要使用AroundInterceptor,则应该自己手动导入WebWork中的AroundInterceptor类.
富文本编辑器标签:Struts 2不再支持WebWork的富文本编辑器,如果应用中需要使用富文本编辑器,则应该使用Dojo的富文本编辑器.
IoC容器支持:Struts 2不再支持内建的IoC容器,而改为全面支持Spring的IoC容器,以Spring的IoC容器作为默认的Object工厂.
希望本文对你有帮助.