首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 收集struts2的缺点 [已结贴,结贴人:classnameextendsjava]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-05 14:26:31 楼主
    baidu google都找不到 不知道为什么 它没缺点吗 你认为它的缺点是什么 用过的来谈下看法
    100  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-05 15:01:371楼 得分:0
    JAVA高级群  41677408
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-05 15:46:532楼 得分:8
    我认为却点是,没有对数据的访问进行整和,虽说可以分三层,但是效果没有其它的好
    它还是有很多的优点的.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-05 17:26:353楼 得分:8
    目前用的比较少,没有发现缺点呢。不过有很多优点啊
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • kokobox
    • 等级:
    发表于:2008-04-05 17:52:064楼 得分: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也是可以转弯实现的。

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-06 10:15:015楼 得分:0
    楼上 你贴的是struts 我问的是sturts 2
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • kokobox
    • 等级:
    发表于:2008-04-06 10:40:566楼 得分:3
    哦,那是我错了,不好意思,你继续等等。o(∩_∩)o...
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-07 15:35:197楼 得分:3
    汗~不过也是学习了阿..
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-07 17:06:208楼 得分:8
    冒似 datetimepicker 取时间有问题,取日期好像不错,不知道算缺点还是bug
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-08 08:49:309楼 得分:0
    该回复于2008-04-08 13:11:24被版主删除
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • dyw31415926
    • 等级:
    发表于:2008-04-08 13:36:1210楼 得分: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的包名,让人看着不舒服,不够统一。


    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-09 08:55:2511楼 得分:0
    该回复于2008-04-09 12:48:14被版主删除
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-09 20:14:2712楼 得分:8
    4楼的老大不要把struts1的缺点搬过来吧,要说struts2最大的缺点莫过于在好多web服务器上支持不好,例如在websphere5.5,weblogic8.1及以前版本支持非常查,需要用最新的struts2.11jar包,而且对于jdk1.4支持不好,需要转换jar包,还有和jstl一起使用在2.11后被明文禁止了。
    其他的struts2真的很完美了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-09 20:27:2313楼 得分:3
    楼主,你应该收集 struts2 的有点才对!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-09 20:45:4414楼 得分:3
    小白求教:
    现在Struts2的技术成熟了吗??我想学习Struts是学1还是直接学2?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-09 20:50:5715楼 得分:0
    引用 13 楼 java2000_net 的回复:
    楼主,你应该收集 struts2 的有点才对!

    因为书上说的都是它的优点 所以我想知道有哪些缺点
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-10 08:49:1716楼 得分:0
    该回复于2008-04-10 09:29:06被版主删除
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-10 13:18:1717楼 得分:3
    never use
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-10 15:40:4118楼 得分:3
    大家也可以谈谈STRUTS的优点啊!!!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-10 15:48:1319楼 得分:6
    我也想听一下Struts 2.0 的缺点!!!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-11 08:50:0420楼 得分:0
    该回复于2008-04-12 11:22:36被版主删除
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-12 08:54:4221楼 得分:0
    该回复于2008-04-12 11:22:34被版主删除
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-12 15:13:2822楼 得分:6
    能了解struts2的缺点,对深入学习他应该比较好哈
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-13 20:12:3423楼 得分:0
    该回复于2008-04-13 20:55:27被版主删除
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-13 22:19:4024楼 得分:5
    做了几个东西了,但我没有碰到什么缺点。个人感觉struts2比较好。用起来顺手。
    Struts2+Spring+Hibernate蛮不错的。
    如果MyEclipse能实现一下Struts2的话那就更好了。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-14 08:56:0225楼 得分:3
    MyEclipse6.0.2中应该会支持的!!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-14 11:04:4826楼 得分:5
    以前在很多项目中用过STRUTS,STRUTS有很多优点,就不说了
    前阵学习了一下STRUTS2,还没有在项目中用。
    感觉缺点是:
    1:觉得文档不好,不如STRUTS1的文档
    2:觉得程序有些混乱,包好多(可能因为是从2个项目合并的吧)
    3:比STRUTS1结构上复杂多了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-14 11:34:3527楼 得分:3
    其实我很想知道Struts2比Webwork强在哪了?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-14 11:50:4528楼 得分:1
    敬礼,老紫竹
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 16:21:0029楼 得分:2
    目前不够普及呀,用的人少,教程也不多
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 16:53:3230楼 得分:2
    struts2的缺点就是没缺点。。。
    struts2的优点就是没缺点。。。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 21:02:1431楼 得分:2
    未来是属于JSF的,不信你看着
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved