锁定老帖子 主题:Struts2与Webwork2的区别
精华帖 (1) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-03-30
一直在用Webwork2,因为Struts2基于Xwork2开发,变化更多的体现在名称上,所以平时甚少关注。这些天看了一下Apache上的文档,觉得Struts2更加优雅一些,至少Action变成了一个纯粹的POJO,而无须再实现任何一个接口。 在拦截器方面,Struts2不再支持AroundInterceptor,如果要用到AroundInterceptor ,则必须单独引入Webwork2的相关类,或者重写自己的拦截器。这一点是我不太理解的地方,不知出于什么考虑。
Struts2全面引入了Dojo,大概是对以前Webwork2在客户端实现的不满吧。例如不再支持Webwork2的richtexteditor,而以Dojo的编辑器取代。说实话,Webwork2了的rich text编辑器确实不太好用,有不少bug。还把Webwork2的Datepicker标签换成了Dojo实现的datetimepicker标签。
对开发人员而言,Struts2在Action映射方面的改进值得关注,尤其是借鉴了Spring的方式,提供了对action名称通配符的支持。在Webwork2里,需要在xwork.xml里以如下格式定义action: <action name="Logon" class="tutorial.Logon"> <result type="redirectAction">Menu</result> <result name="input">/Logon.jsp</result> </action>
而在Struts2中,则可以引入通配符,形如: <action name="*Logon" class="tutorial.Logon"> <result type="redirectAction">Menu</result> <result name="input">/Logon.jsp</result> </action> 这样,任何以Logon结尾用作登录验证的Action,例如NewUserLogon,都可调用tutorial.Logon的一个实例。
Struts2还引入一个消息存储拦截器MessageStoreInterceptor用于存放、检索各种提示、错误消息等等,在一个session生命期中都是可用的。
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-03-31
我觉得对dojo的支持让我很失望,dojo根本无法达到商用的要求。所以基本上,我们现在的项目还是老老实实的在客户端使用ext-js.
|
|
返回顶楼 | |
发表时间:2008-05-05
虽然我不认为dojo可以商用化,但是我也完全不认为ext可以商用化,ext只是内部网站才可以使用的庞大的东西,当然是在国内而言。
|
|
返回顶楼 | |
发表时间:2008-05-05
struts2如果要在Interceptor中使用spring 必须配置struts-spring-plugin
|
|
返回顶楼 | |
发表时间:2008-05-05
个人感觉struts2的ajax的集成实在没有什么实用价值
|
|
返回顶楼 | |
发表时间:2008-05-05
重来不用集成的ajax
|
|
返回顶楼 | |
发表时间:2008-05-05
Action变成了一个纯粹的POJO,现在正为这个郁闷呢,每个action多了一些只有特定情况才会用到的property,看起来很不爽,反而觉得以前的frombean好了。
|
|
返回顶楼 | |
发表时间:2008-05-05
偶还在用struts1也不打算用struts2了。
因为完全没有令人激动的特性!而且还听说变慢了! |
|
返回顶楼 | |
发表时间:2008-05-31
本人今年开始做struts2的项目,以前多年做struts的,感觉struts2确实很强大,在配置上的灵活和Tag的用法简单上都有很大的提高,至少在开发效率上确实提高了许多,把action作为一个POJO来运用,省掉了FormBean确实省掉了很多的麻烦跟代码,代码量立刻下降!而上上楼那位兄弟说的可以把以前的FormBean作为属性注入到ACTION当中,而且比以前更加方便了。
|
|
返回顶楼 | |
发表时间:2008-05-31
aninfeel 写道 Action变成了一个纯粹的POJO,现在正为这个郁闷呢,每个action多了一些只有特定情况才会用到的property,看起来很不爽,反而觉得以前的frombean好了。
你把property合成一个class,和formbean不是一回事么。而且以前formbean里面的property只能是string。 |
|
返回顶楼 | |