锁定老帖子 主题:SSH架构中的Struts似乎很鸡肋
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2009-05-25
贫血是啥意思?
|
|
返回顶楼 | |
发表时间:2009-05-25
最后修改:2009-05-25
Durian 写道 贫血是啥意思?
同问, 看过贫血对象,就是 BO(Business Object),不需要存储状态以及相关的关系 这做动词啥意思呢? |
|
返回顶楼 | |
发表时间:2009-05-25
由于多线程关系所以尽量不要使用状态属性.....否则要七锁八锁的....很是麻烦.
|
|
返回顶楼 | |
发表时间:2009-05-25
我用的也是struts1。我写了一个公共的基类DefaultObjectAction,封装了自动的data population,validation,crud等等操作。具体的子类如果需要特殊操作,可以override父类的某些方法,否则子类中不用写任何代码。基本上不用actionform,也觉得是个鸡肋。
|
|
返回顶楼 | |
发表时间:2009-05-25
都是鸡肋而已.
|
|
返回顶楼 | |
发表时间:2009-05-25
不可否认struts依然是广泛使用的框架,只不过使用方式不一样。
1、如果觉得form是个废物,可以直接砍掉啊,单独写个获取数据的类(如果要获取文件等数据,还是用form比较好) 2、action里面做分发、业务流的控制,这就足够了,难道非要充斥n多行代码(这是dao和service要做的)?累! 所以个人认为struts依然是一个很好的框架,要看你怎么用了。 |
|
返回顶楼 | |
发表时间:2009-05-25
最后修改:2009-05-25
在form中做valiate还是不错的,可以校验数据的有效性。如果把这部分放到action本来也可以,我以前也是这么做的。不过现在想想,放到form之后,action代码就很干净了,也是不错的选择。
至于form的作用,和业务层的model还是有一些区别的,但两者很像倒是真的。很多情况下的确可以混为一起使用,但意义其实还是有区别的。我一般show的时候直接用model扔到页面上,但如果是create,update这样的情况,还是使用form,然后利用Beanutils做一下form与model的映射,这样看起来更清晰一些。毕竟表单数据与实际的业务对象还是有一些区别的,当然如果嫌麻烦,作为一个对象也是可以的,很多人都这么做。但我还是更喜欢目前自己的这种做法。 |
|
返回顶楼 | |
发表时间:2009-05-25
jcs7575 写道 我认为action不就是做转发来用的
如果不用form那表单的数据传不过来啊 如果不用struts 如果用velocity也是一样需要有spring的controller 也需要有model的 你觉得呢? 赞同呢~ 我也一直感觉struts 也就那意思了 没什么必要深究了 |
|
返回顶楼 | |
发表时间:2009-05-25
nighthawk 写道 action还有以下作用:
1,参数校验 2,异常处理 3,页面分发 如果讨厌form,那就struts2呗。 我比你们好,struts没有用多久就转到struts2去了 哈哈 |
|
返回顶楼 | |
发表时间:2009-05-25
使用Spring很多年,一直不知道要Struts能做什么,国内大肆鼓吹SSH。真的有必要吗?Spring+iBatis||Hibernate 完全可以完成相应的工作,真需要标签JSTL+SpringTagLib完全够用,Struts还真就用不上!
|
|
返回顶楼 | |