不想过多的争论struts与webwork的优越性,只是自己做了一个小试验。在做试验之前已经用struts做过两个项目了,webwork还是初级学习。
1.使用标签。struts的自定义标签多,学习起来复杂,但同时功能强大。webwork只定义了一个webwork.tld,操作更简单。
2.有效性验证和javascript支持。struts支持客户端JavaScript与服务器端的校验。webwork的客户端校验,欠美观。具说支持javascript但是因为初学,没有试过。
3.struts和webwork都支持velocity.struts的支持是使用velocity tools,webwork则直接将velocity嵌入。比较起来webwork显示更加灵活,配置简单一些。
4.插件的支持。struts作为比较成熟的产品,拥有titles、validator插件,也可自己编写自己的插件,通过struts配置文件加载。webwork实现插件是通过定制component.xml实现。
5.显示方面。struts因为支持titles,布局更加灵活。webwork与velocity切换容易也可以定制不同的显示模板,但是定制过程繁琐一些。
6.hibernate的支持程度。struts通过过滤器和插件实现。webwork有专门的插件:org.hibernate.admin.component.HibernateSessionFactory和org.hibernate.admin.component.HibernateSession
7.模块化开发。struts支持模块化开发,支持switchAction.webwork暂时不知是否支持团队开发,支持action复用。通过定义方法。
8.显示定义formbean.struts需要显示定义 formbean或通过配置文件定义动态属性。webwork不需要定义formbean或相关属性,直接通过拦截器捕获属性。
9.资料获取。struts开源项目,支持者众多,Apache项目文档比较全。webwork相关文档和学习资料较少。
转自:http://www.javaeye.com/topic/6947