论坛首页 入门技术论坛

SSH架构中的Struts似乎很鸡肋

浏览 22425 次
该帖已经被评为新手帖
作者 正文
   发表时间:2009-05-25  
hh421091200 写道
nighthawk 写道
action还有以下作用:
1,参数校验
2,异常处理
3,页面分发
如果讨厌form,那就struts2呗。


我比你们好,struts没有用多久就转到struts2去了  哈哈



Struts2把form里的东西拿到action里了,不还是一样吗
0 请登录后投票
   发表时间:2009-05-25  
其实有时候确实挺烦的 一个form很多行,都是些无用的东西

但是用它方便啊,所以一直用…………
0 请登录后投票
   发表时间:2009-05-25  
Durian 写道
贫血是啥意思?



这里说贫血就是指摆设,没用,很苍白!
0 请登录后投票
   发表时间:2009-05-25  
在这里我不谈struts是否如同鸡肋,但从它的发展来和贡献来看是功不可没的.有很多大型应用都是基于struts1来做的.这也证明了它的稳定性.目前我们用的也是struts1.不过我们扩展了一下,form可以对应不同的方法进行验证,action可以对应不同的input.这样代码上精简了不少.不过在使用上增加了一定复杂性.struts1还是不错的.
1 请登录后投票
   发表时间:2009-05-25  
抛出异常的爱 写道
由于多线程关系所以尽量不要使用状态属性.....否则要七锁八锁的....很是麻烦.

在2中没这个问题吧,action属性的生命周期是一个request。
0 请登录后投票
   发表时间:2009-05-25  
snowolf 写道
使用Spring很多年,一直不知道要Struts能做什么,国内大肆鼓吹SSH。真的有必要吗?Spring+iBatis||Hibernate 完全可以完成相应的工作,真需要标签JSTL+SpringTagLib完全够用,Struts还真就用不上!

1.service直接暴露出去不安全,再加上其他一些原因(例如service的粒度问题和方法复用问题),如果自己做控制,变相的facade一层,实际还是要多一层。

2.有不少工具还是依赖于servlet的一些接口的。
1 请登录后投票
   发表时间:2009-05-26  
首先请楼主确信一点,struts的地位很稳固,就跟牛顿定律一样普遍适用。
struts的用途就是展现层的经典mvc架构。action(c),formbean(m),jsp(v).

1. 你觉得formbean这样一个边界对象应该充血?基本上我认为就是validation这点血可以充。如果重用domain对象,万一界面对象有额外的东西呢?看着办。
2. 你觉得action对象应该充血?充什么血?只有界面逻辑?的确,有时候这部分逻辑很简单。业务逻辑是放在service里的。

楼主似乎从感情上觉得充点血的对象才是好的。若写个除了set/get啥都没有的对象会没有用,会侮辱自己的IQ和宝贵的时间。我也有过同感。

但我现在给你个比喻:造一艘航母,它的核心部分也许是很高科技的ic芯片,但它的某颗关键的螺帽,也许就是平淡无奇的6角形的钢做成的。千万别尝试把这颗螺帽做成水晶。

我相信总有一天,你也会追求平淡无奇但是坚固可靠的架构。
2 请登录后投票
   发表时间:2009-05-26  
TO betafox:

我有几个问题,也许和你的想法不一样,分享一下。

首先我认为Struts本属于展现层的框架,本身对于展现来说,不需要过度的充血,如果在展现层完成很多逻辑之后,是不是会让产品跟展现层偶合的太厉害?而且我感觉业务变的不快,显示到变的很快。而且我认为SERVICE应该跟ACTION一样,是很薄的一层。
0 请登录后投票
   发表时间:2009-05-26  
hatedance 写道
首先请楼主确信一点,struts的地位很稳固,就跟牛顿定律一样普遍适用。
struts的用途就是展现层的经典mvc架构。action(c),formbean(m),jsp(v).

1. 你觉得formbean这样一个边界对象应该充血?基本上我认为就是validation这点血可以充。如果重用domain对象,万一界面对象有额外的东西呢?看着办。
2. 你觉得action对象应该充血?充什么血?只有界面逻辑?的确,有时候这部分逻辑很简单。业务逻辑是放在service里的。

楼主似乎从感情上觉得充点血的对象才是好的。若写个除了set/get啥都没有的对象会没有用,会侮辱自己的IQ和宝贵的时间。我也有过同感。

但我现在给你个比喻:造一艘航母,它的核心部分也许是很高科技的ic芯片,但它的某颗关键的螺帽,也许就是平淡无奇的6角形的钢做成的。千万别尝试把这颗螺帽做成水晶。

我相信总有一天,你也会追求平淡无奇但是坚固可靠的架构。



STRUTS的确经典,但是它确实没有(升级版的MVC,如:WebWork/STRUTS2)好用,嘿嘿! 我也赞同你的部分观点。不应该在ACTION里充血,而且本身它就很难充血,而且也不应该充血。
0 请登录后投票
   发表时间:2009-05-26  
用地一次Struct就再也不用了,见意大家还是多看看Spring的Mvc。
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics