$用struts一段时间了后改到了webwork近1年,这个版块还是集中在struts上,挖墙角写webwork例子$ 顺便放分给 框架fans 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 struts 在是一个老牌的 MVC 框架,在结构上可能存在一些问题,但是,他的发展时间长,用的人多,技术支持也多,而且稳定,已经是事实的标准。觉得,应该不会太快的被淘汰,但是,大家也应该对其他的 MVC 有所了解,感觉,spring 的 MVC 就比较可以,至少在设计上。 如果 Struts TI 如果换成了WEBWORK为corestruts用户要学新的了 支持,我知道学w2好,还是spring好 晕 写错了不知道学WEBWORK好,还是学spring好 http://www.javaeye.com/pages/viewpage.action?pageId=434选择框架的一个参考 我学习过struts,webwork,jsf,tepetry,发现无论从学习的难度或开发的时间,表现层最简单的框架都是webwork,而且webwork可以编写junit测试用例,多线程支持等。最复杂的就是struts,可能是由于他出现最早,所以用的最广泛。我个人的开发经验认为,表现层的东西,越简单越好,如果搞得太复杂的话,开发时间上几乎把重心都放在上面,就变成本末倒置了。 在SpringMvc中如果我想把某个视图由jsp更换成velocity,只要把配置xxxView.(class)=org.springframework.web.servlet.view.JstlViewxxxView.url=/xxx.jsp写成xxxView.(class)=org.springframework.web.servlet.view.velocity.VelocityViewxxxView.url=/xxx.html即可若是再想换成freeer,配置写成xxxView.(class)=org.springframework.web.servlet.view.freeer.FreeMarkerViewxxxView.url=/xxx.ftl即可请教一下,webwork是否有更简单的方法?另外,我很怀疑webwork吹嘘的prototype的action的保证线程安全问题的实际好处,因为我从来没碰到过需要在action中放置实例变量的情况,自然也就没有什么线程安全问题的困扰。 全局指定方法<result-types> <result-type default="true" name="freeer" class="com.opensymphony.webwork.views.freeer.FreeerResult"/> </result-types> 局部指定方法 <action name="bar" class="myPackage.barAction"> <result name="success" type="freeer"> 两种可以同时使用 互不干扰 哦,2者的实现方式还是差不多的,一个指定View接口的实现类(SpringMvc对于全局是指定defaultParentView),一个指定WebWorkResultSupport的子类.看来确实如此,ww偏重易用性,springmvc偏重灵活性(在view控制上,还可以通过其它的ViewResolver). webwork每个action都可以指定不同的视图 <result-type name="dispatcher" class="com.opensymphony.webwork.dispatcher.ServletDispatcherResult" default="true" /> <result-type name="redirect" class="com.opensymphony.webwork.dispatcher.ServletRedirectResult" default="false" /> <result-type name="velocity" class="com.opensymphony.webwork.dispatcher.VelocityResult" default="false" /> <result-type name="chain" class="com.opensymphony.xwork.ActionChainResult" default="false" /> <result-type name="xslt" class="com.opensymphony.webwork.views.xslt.XSLTResult" default="false" /> <result-type name="jasper" class="com.opensymphony.webwork.views.jasperreports.JasperReportsResult" default="false" /> <result-type name="freeer" class="com.opensymphony.webwork.views.freeer.FreeerResult" default="false" /> <result-type name="httpheader" class="com.opensymphony.webwork.dispatcher.HttpHeaderResult" default="false" /> <result-type name="stream" class="com.opensymphony.webwork.dispatcher.StreamResult" default="false" /> 还可以自己定义别的视图 灵活性也不错webwork比struts好 还是明显的没用过spring mvc 一直没看到关于webwork spring mvc的全面权威的比较方面的评论 Struts1 redirect的问题 关于hibernate去除字段数据重复的问题 struts 1.3标签熟手帮忙解决个小问题,<bean:write>的 请高手帮忙:java调用第三方提供的dll文件。 求助:axis怎么返回一个自定义对象的ArrayList? WebLogic 试用版 ? 关于实体ben里的eql语句有限制吗?? 问一个初级问题???? 会话bean中的问题 springmvc HTTP Status 404 – Not Found <<Spring in Action>>spring mvc部分的一个小问题 DOM4j生成XML文件时可以自动的引用一个xsl文件吗
支持,我知道学w2好,还是spring好
xxxView.(class)=org.springframework.web.servlet.view.JstlView
xxxView.url=/xxx.jsp
写成
xxxView.(class)=org.springframework.web.servlet.view.velocity.VelocityView
xxxView.url=/xxx.html
即可
若是再想换成freeer,配置写成
xxxView.(class)=org.springframework.web.servlet.view.freeer.FreeMarkerView
xxxView.url=/xxx.ftl
即可请教一下,webwork是否有更简单的方法?另外,我很怀疑webwork吹嘘的prototype的action的保证线程安全问题的实际好处,因为我从来没碰到过需要在action中放置实例变量的情况,自然也就没有什么线程安全问题的困扰。
<result-types>
<result-type default="true" name="freeer" class="com.opensymphony.webwork.views.freeer.FreeerResult"/>
</result-types>
局部指定方法
<action name="bar" class="myPackage.barAction"> <result name="success" type="freeer"> 两种可以同时使用 互不干扰
看来确实如此,ww偏重易用性,springmvc偏重灵活性(在view控制上,还可以通过其它的ViewResolver).
<result-type name="dispatcher" class="com.opensymphony.webwork.dispatcher.ServletDispatcherResult" default="true" />
<result-type name="redirect" class="com.opensymphony.webwork.dispatcher.ServletRedirectResult" default="false" />
<result-type name="velocity" class="com.opensymphony.webwork.dispatcher.VelocityResult" default="false" />
<result-type name="chain" class="com.opensymphony.xwork.ActionChainResult" default="false" />
<result-type name="xslt" class="com.opensymphony.webwork.views.xslt.XSLTResult" default="false" />
<result-type name="jasper" class="com.opensymphony.webwork.views.jasperreports.JasperReportsResult" default="false" />
<result-type name="freeer" class="com.opensymphony.webwork.views.freeer.FreeerResult" default="false" />
<result-type name="httpheader" class="com.opensymphony.webwork.dispatcher.HttpHeaderResult" default="false" />
<result-type name="stream" class="com.opensymphony.webwork.dispatcher.StreamResult" default="false" /> 还可以自己定义别的视图 灵活性也不错webwork比struts好 还是明显的没用过spring mvc
一直没看到关于webwork spring mvc的全面权威的比较方面的评论