首页
新闻
论坛
群组
Blog
文档
下载
读书
Tag
网摘
搜索
.NET
Java
游戏
视频
人才
外包
培训
数据库
书店
程序员
欢迎您:
游客
| 退出
| 登录
注册
帮助
我的帖子
我参与的帖子
我的空间
我的网摘
CSDN
CSDN社区
Java
框架、开源
将帖子提前
放进我的网摘
推荐给好友
我要提问
帖子加分
生成帖子
置顶
推荐(加精)
取消推荐(加精)
锁定帖子
移动帖子
取消引用
结贴去...
管理菜单
页面风格切换
标准风格
老版本论坛
收集struts2的缺点
[已结贴,结贴人:classnameextendsjava]
加为好友
发送私信
在线聊天
classnameextendsjava
我是一个bean
等级:
发表于:
2008-04-05 14:26:31
楼主
baidu google都找不到 不知道为什么 它没缺点吗 你认为它的缺点是什么 用过的来谈下看法
问题点数:
100
回复次数:
31
显示所有回复
显示星级回复
显示楼主回复
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
KKK2007
不懂java
等级:
发表于:
2008-04-05 15:01:37
1
楼 得分:
0
JAVA高级群 41677408
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
jlingang
等级:
发表于:
2008-04-05 15:46:53
2
楼 得分:
8
我认为却点是,没有对数据的访问进行整和,虽说可以分三层,但是效果没有其它的好
它还是有很多的优点的.
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
commanager
commanager
等级:
发表于:
2008-04-05 17:26:35
3
楼 得分:
8
目前用的比较少,没有发现缺点呢。不过有很多优点啊
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
kokobox
koko@低调...低调......
等级:
发表于:
2008-04-05 17:52:06
4
楼 得分:
5
缺点肯定有啊,就连微软都不敢说windows没有缺点,从他的标签开始说,虽然好用,但是可移植性差,没有jstl标签移植性高。
还有他的mvc层面太多,测试不方便,做小应用也不适合,没有jsp+bean简洁快速。
太多了,给你贴段网上的吧
一、 转到展示层时,需要配置forward,每一次转到展示层,相信大多数都是直接转到jsp,而涉及到转向,需要配置forward,如果有十个展示层的jsp,需要配置十次struts,而且还不包括有时候目录、文件变更,需要重新修改forward,注意,每次修改配置之后,要求重新部署整个项目,而tomcate这样的服务器,还必须重新启动服务器,如果业务变更复杂频繁的系统,这样的操作简单不可想象。现在就是这样,几十上百个人同时在线使用我们的系统,大家可以想象一下,我的烦恼有多大。
二、 Struts 的Action必需是thread-safe方式,它仅仅允许一个实例去处理所有的请求。所以action用到的所有的资源都必需统一同步,这个就引起了线程安全的问题。
三、 测试不方便. Struts的每个Action都同Web层耦合在一起,这样它的测试依赖于Web容器,单元测试也很难实现。不过有一个Junit的扩展工具Struts TestCase可以实现它的单元测试。
四、 类型的转换. Struts的FormBean把所有的数据都作为String类型,它可以使用工具Commons-Beanutils进行类型转化。但它的转化都是在Class级别,而且转化的类型是不可配置的。类型转化时的错误信息返回给用户也是非常困难的。
五、 对Servlet的依赖性过强. Struts处理Action时必需要依赖ServletRequest 和ServletResponse,所有它摆脱不了Servlet容器。
六、 前端表达式语言方面.Struts集成了JSTL,所以它主要使用JSTL的表达式语言来获取数据。可是JSTL的表达式语言在Collection和索引属性方面处理显得很弱。
七、 对Action执行的控制困难. Struts创建一个Action,如果想控制它的执行顺序将会非常困难。甚至你要重新去写Servlet来实现你的这个功能需求。
八、 对Action 执行前和后的处理. Struts处理Action的时候是基于class的hierarchies,很难在action处理前和后进行操作。
九、 对事件支持不够. 在struts中,实际是一个表单Form对应一个Action类(或DispatchAction),换一句话说:在Struts中实际是一个表单只能对应一个事件,struts这种事件方式称为application event,application event和component event相比是一种粗粒度的事件。
Struts重要的表单对象ActionForm是一种对象,它代表了一种应用,这个对象中至少包含几个字段,这些字段是Jsp页面表单中的input字段,因为一个表单对应一个事件,所以,当我们需要将事件粒度细化到表单中这些字段时,也就是说,一个字段对应一个事件时,单纯使用Struts就不太可能,当然通过结合JavaScript也是可以转弯实现的。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
classnameextendsjava
我是一个bean
等级:
发表于:
2008-04-06 10:15:01
5
楼 得分:
0
楼上 你贴的是struts 我问的是sturts 2
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
kokobox
koko@低调...低调......
等级:
发表于:
2008-04-06 10:40:56
6
楼 得分:
3
哦,那是我错了,不好意思,你继续等等。o(∩_∩)o...
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
sunny_davy
等级:
发表于:
2008-04-07 15:35:19
7
楼 得分:
3
汗~不过也是学习了阿..
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
learnner
等级:
发表于:
2008-04-07 17:06:20
8
楼 得分:
8
冒似 datetimepicker 取时间有问题,取日期好像不错,不知道算缺点还是bug
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
jxszxw
晓伟
等级:
发表于:
2008-04-08 08:49:30
9
楼 得分:
0
该回复于2008-04-08 13:11:24被版主删除
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
dyw31415926
守护:struts2.0QQ群7844777虚位以待!!
等级:
发表于:
2008-04-08 13:36:12
10
楼 得分:
10
一、 转到展示层时,需要配置forward,每一次转到展示层,相信大多数都是直接转到jsp,而涉及到转向,需要配置forward,如果有十个展示层的jsp,需要配置十次struts,而且还不包括有时候目录、文件变更,需要重新修改forward,注意,每次修改配置之后,要求重新部署整个项目,而tomcate这样的服务器,还必须重新启动服务器,如果业务变更复杂频繁的系统,这样的操作简单不可想象。现在就是这样,几十上百个人同时在线使用我们的系统,大家可以想象一下,我的烦恼有多大。
========================================================================
现在tomcat 高版本是会自动部署的,但由于涉及到配置文件,还是实行了部署操作。的确是缺点
二、 Struts 的Action必需是thread-safe方式,它仅仅允许一个实例去处理所有的请求。所以action用到的所有的资源都必需统一同步,这个就引起了线程安全的问题。
=========================================================================
struts2 是每次是启动一个新实例来执行请求了,此问题可以说解决了
三、 测试不方便. Struts的每个Action都同Web层耦合在一起,这样它的测试依赖于Web容器,单元测试也很难实现。不过有一个Junit的扩展工具Struts TestCase可以实现它的单元测试。
========================================
Struts2的每个Action都同Web层不再耦合,很方便测试.
四、 类型的转换. Struts的FormBean把所有的数据都作为String类型,它可以使用工具Commons-Beanutils进行类型转化。但它的转化都是在Class级别,而且转化的类型是不可配置的。类型转化时的错误信息返回给用户也是非常困难的。
===========================================
类型的封装可以自动进行。很方便。jsp到action的数据,由struts2完成,不用一堆request.getParameter了
五、 对Servlet的依赖性过强. Struts处理Action时必需要依赖ServletRequest 和ServletResponse,所有它摆脱不了Servlet容器。
=====================================================
同样, Struts2处理Action时不需要依赖ServletRequest 和ServletResponse
六、 前端表达式语言方面.Struts集成了JSTL,所以它主要使用JSTL的表达式语言来获取数据。可是JSTL的表达式语言在Collection和索引属性方面处理显得很弱。
=======================================================
struts2新增了ognl强大的表达式语言,但目前尚没领略到其强大之处
七、 对Action执行的控制困难. Struts创建一个Action,如果想控制它的执行顺序将会非常困难。甚至你要重新去写Servlet来实现你的这个功能需求。
==============================================
struts2提供了 rediect-action,可以方便的跳转到另一个action
八、 对Action 执行前和后的处理. Struts处理Action的时候是基于class的hierarchies,很难在action处理前和后进行操作。
九、 对事件支持不够. 在struts中,实际是一个表单Form对应一个Action类(或DispatchAction),换一句话说:在 Struts中实际是一个表单只能对应一个事件,struts这种事件方式称为application event,application event 和component event相比是一种粗粒度的事件。
Struts重要的表单对象ActionForm是一种对象,它代表了一种应用,这个对象中至少包含几个字段,这些字段是Jsp页面表单中的 input字段,因为一个表单对应一个事件,所以,当我们需要将事件粒度细化到表单中这些字段时,也就是说,一个字段对应一个事件时,单纯使用 Struts就不太可能,当然通过结合JavaScript也是可以转弯实现的。
========================
struts2 也有缺点,我最讨厌的就是他的taglib,总强加一些非常难看的样式给你。破坏了你的布局。
虽然有freemaker,毕竟不是所有人都愿意用。总之,struts2控制页面布局不太好。
另外。struts2还没有什么集成开发环境,成了不少人不愿意转换的理由,的确开发起来不太方便
struts2对ajax的支持还不太理想。
struts2里的包名有些还保留着webwork的包名,让人看着不舒服,不够统一。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zhangxiaow
刘生九兵卫
等级:
发表于:
2008-04-09 08:55:25
11
楼 得分:
0
该回复于2008-04-09 12:48:14被版主删除
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
qlyiua888
神采飞扬
等级:
发表于:
2008-04-09 20:14:27
12
楼 得分:
8
4楼的老大不要把struts1的缺点搬过来吧,要说struts2最大的缺点莫过于在好多web服务器上支持不好,例如在websphere5.5,weblogic8.1及以前版本支持非常查,需要用最新的struts2.11jar包,而且对于jdk1.4支持不好,需要转换jar包,还有和jstl一起使用在2.11后被明文禁止了。
其他的struts2真的很完美了
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
java2000_net
老紫竹 Java QQ群:19080316
等级:
发表于:
2008-04-09 20:27:23
13
楼 得分:
3
楼主,你应该收集 struts2 的有点才对!
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
roader2046
学习与接分并重
等级:
发表于:
2008-04-09 20:45:44
14
楼 得分:
3
小白求教:
现在Struts2的技术成熟了吗??我想学习Struts是学1还是直接学2?
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
classnameextendsjava
我是一个bean
等级:
发表于:
2008-04-09 20:50:57
15
楼 得分:
0
引用 13 楼 java2000_net 的回复:
楼主,你应该收集 struts2 的有点才对!
因为书上说的都是它的优点 所以我想知道有哪些缺点
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zxw5911
柳生九兵卫
等级:
发表于:
2008-04-10 08:49:17
16
楼 得分:
0
该回复于2008-04-10 09:29:06被版主删除
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
kaoloveting
编码混口饭吃
等级:
发表于:
2008-04-10 13:18:17
17
楼 得分:
3
never use
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
l_wenb
等级:
发表于:
2008-04-10 15:40:41
18
楼 得分:
3
大家也可以谈谈STRUTS的优点啊!!!
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
gyshun
等级:
发表于:
2008-04-10 15:48:13
19
楼 得分:
6
我也想听一下Struts 2.0 的缺点!!!
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zxw5911
柳生九兵卫
等级:
发表于:
2008-04-11 08:50:04
20
楼 得分:
0
该回复于2008-04-12 11:22:36被版主删除
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zxw5911
柳生九兵卫
等级:
发表于:
2008-04-12 08:54:42
21
楼 得分:
0
该回复于2008-04-12 11:22:34被版主删除
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
ivorytower
雪地白狐
等级:
发表于:
2008-04-12 15:13:28
22
楼 得分:
6
能了解struts2的缺点,对深入学习他应该比较好哈
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
kfzxs
123
等级:
发表于:
2008-04-13 20:12:34
23
楼 得分:
0
该回复于2008-04-13 20:55:27被版主删除
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
spxrttn
等级:
发表于:
2008-04-13 22:19:40
24
楼 得分:
5
做了几个东西了,但我没有碰到什么缺点。个人感觉struts2比较好。用起来顺手。
Struts2+Spring+Hibernate蛮不错的。
如果MyEclipse能实现一下Struts2的话那就更好了。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zqznew
zqznew
等级:
发表于:
2008-04-14 08:56:02
25
楼 得分:
3
MyEclipse6.0.2中应该会支持的!!
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
nearsun
蓝色
等级:
发表于:
2008-04-14 11:04:48
26
楼 得分:
5
以前在很多项目中用过STRUTS,STRUTS有很多优点,就不说了
前阵学习了一下STRUTS2,还没有在项目中用。
感觉缺点是:
1:觉得文档不好,不如STRUTS1的文档
2:觉得程序有些混乱,包好多(可能因为是从2个项目合并的吧)
3:比STRUTS1结构上复杂多了
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
cancer2000
夜之哀伤
等级:
发表于:
2008-04-14 11:34:35
27
楼 得分:
3
其实我很想知道Struts2比Webwork强在哪了?
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
l_wenb
等级:
发表于:
2008-04-14 11:50:45
28
楼 得分:
1
敬礼,老紫竹
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
snowvivid
等级:
发表于:
2008-04-15 16:21:00
29
楼 得分:
2
目前不够普及呀,用的人少,教程也不多
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
KKK2007
不懂java
等级:
发表于:
2008-04-15 16:53:32
30
楼 得分:
2
struts2的缺点就是没缺点。。。
struts2的优点就是没缺点。。。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
chliang
拉西
等级:
发表于:
2008-04-15 21:02:14
31
楼 得分:
2
未来是属于JSF的,不信你看着
修改
删除
举报
引用
回复
将帖子提前
放进我的网摘
推荐给好友
我要提问
帖子加分
结贴去...
管理菜单
页面风格切换
标准风格
老版本论坛
网站简介
-
广告服务
-
网站地图
-
帮助
-
联系方式
-
诚聘英才
-
English
-
问题报告
北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
abc推荐给好友