struts带来的巨大烦恼…是不是系统做大了都不能使用struts?

转载 2006年05月20日 13:14:00
经过一段时间使用struts,随着系统越做越大,现在,我终于要抛弃struts了,因为

到现在,struts的巨大不足和缺陷越来越影响到我的项目的进度和开发效率了。

背景:现在,我负责着一个大型企业的人力资源管理系统,整个系统管理的人员大约

有1.6万人左右,系统基于jboss+oracle,java技术框架为struts,少许的报表用到

了 servlet,项目开发的时间差不多一年,好,转入正题:

到现在为止,我认为formbean 的好处就是和页面表单对应起来,在系统业务处理中,

可以实例化formbean之就可以取出页面表单的值来,方便于在业务逻辑中引用。使得

业务处理层和展示层可以分离开来,到现在为止,这也是我发现struts的唯一好处。

但struts带给我的烦恼,各位,实在太多太多了,主要的几点我罗列如下:

一、转到展示层时,需要配置forward

   每一次转到展示层,相信大多数都是直接转到jsp,而涉及到转向,需要配置

forward,如果有十个展示层的jsp,需要配置十次struts,而且还不包括有时候目录

、文件变更,需要重新修改forward,注意,每次修改配置之后,要求重新部署整个

项目,而tomcate这样的服务器,还必须重新启动服务器,如果业务变更复杂频繁的

系统,这样的操作简单不可想象。现在就是这样,几十上百个人同时在线使用我们的

系统,大家可以想象一下,我的烦恼有多大。

二、当页面表单需要自动变化或者频繁变化时。

  对于一个成熟的MIS系统来说,页面表单肯定是不固定的,甚至象有些系统,页面表

单是存在数据库中,需要填写的表单在页面自动生成,比如填写一个人员基本信息,

本来只需要填写 姓名、性别、出生年月 三个指标,而我后来需要增加籍贯这样的指

标,我只需要在数据库中添加籍贯这个记录,并在页面就能自动增加籍贯这样的表单

。而 struts在这方面,其优势反而变成了不足,我参考了非常多的人力资源管理系

统,这些系统几乎都能够做系统里面就可以控制人员信息的指示,进行使展示层能随

之灵活变化,如果使用了struts,这些灵活性就根本用不上。

   同时,如果页面表单频繁变化时,就需要频繁修改formbean对应的方法和属性,

而每次修改之后,就要求重新部署,或者重新启动服务器……。

三、要引入struts包,引入strtus标签库,现到现为止,我们有所见即所得的

dreamwaver、frontpage、webeditor,对于繁杂页面的设计,是非常方便的,而对于

struts标签库,没有哪一种软件能够支持。jbuilder我没用过,不知道支持不支持,

而为了维护这些标签库,增加工作量支持,也非常容易出错,稍微不小心,就一堆异

常抛出来,系统他死给你看。


总结:

  现在为什么asp.net越来越流行,非常重要的一点,就是asp.net这样的模式,简单

,易于控制。而且我现在仍然觉得,利用jsp的文件名作为路径的映射非常方便,而

struts还非常去配置action,使之有带有象.do、.main这样后缀的路径访问方式,不

但增加了系统功能的复杂性,影响了系统的性能不说,还增加了非常多的系统不可掌

握因素。其实 javabean+jsp,利用javabean处理业务逻辑,只利用jsp来展示数据,

这正是.net的原型,同样,即可以不用去配置struts、也不需要象serlet一样去配置

web.xml带来的麻烦。  所以,并不是所有的框架都是好的,越简单越易于控制。
   所以,现在,我决定放弃struts,转而采用javabean+jsp的技术结构。

Struts 2.0 学生成绩管理系统

这里以对学生信息的操作为例: 1.配置文件  struts.xml /add
  • linhaiyun_ytdx
  • linhaiyun_ytdx
  • 2017年02月28日 11:51
  • 1437

基于struts2的日志管理系统

既然是基于struts2框架做的,就必须了解struts框架。struts详解:http://baike.baidu.com/link?url=thjh0ktwQ5cQhzKnUVmSdIqXicPU...
  • HsuanlinMagic
  • HsuanlinMagic
  • 2016年09月19日 20:46
  • 1779

Struts标签入门

Struts标签入门 基本概述     Struts 是 Apache Jakarta 的一个著名的开源项目,目标是为构建基于 Java 的 web 应用程序提供一个框架。Struts 提...
  • q547550831
  • q547550831
  • 2016年01月26日 12:50
  • 1600

用Struts,Spring和hibernate实现登录操作

刚刚接触Java web 开发,写了一个登录界面,谈谈自己做的时候的一些 感受和具体步骤。  写一个登录的功能首先得有一个页面吧 0.配置环境,因为我是用的myeclipse 我全部是通过myec...
  • qq_32285991
  • qq_32285991
  • 2017年04月23日 21:53
  • 487

struts 2 漏洞学习总结

struts2最近几个漏洞分析&稳定利用payload http://drops.wooyun.org/papers/902 0x00 背景 看到网上关于struts2利用的文章...
  • bcbobo21cn
  • bcbobo21cn
  • 2016年07月05日 14:03
  • 1240

Struts工作机制?为什么要使用Struts?

基本简要流程如下: 1、客户端浏览器发出HTTP请求。 2、根据web.xml配置,该请求被FilterDispatcher接收。 3、根据struts.xml配置,找到需要调用的Action类和方法...
  • jxq0816
  • jxq0816
  • 2014年01月03日 20:33
  • 3348

struts中3种情况通配符的使用方法 及 动态方法调用

一:概述       概念: 应用可能有很多个action 声明,可把多个相似的映射关系简化为一个映射关系的机制 (多个Action类----一个action标签)      通配符映射规则: 一般使...
  • BiLaHePan
  • BiLaHePan
  • 2016年03月15日 23:06
  • 1027

使用Struts2时为Android端提供数据

使用Struts2时为Android端提供数据 ---ONE Goal,ONE Passion ! 勉励自己:不想过别人安排的命运,只能自己足够强大!趁年轻,不要...
  • fengltxx
  • fengltxx
  • 2016年12月01日 22:52
  • 566

struts2下面如何同时使用servlet,就是如何实现struts与servlet共存

问题 项目要求struts2和servlet能够共存,就是struts的请求发给struts处理,servlet的请求发给servlet处理。目前web.xml文件应该是类似于如下的配置:  ...
  • u013358115
  • u013358115
  • 2014年03月07日 14:06
  • 684

为什么Java的Web开发需要用到Struts呢?

首先,让我们来了解一些基础概念 1.什么是框架呢?    框架这个东西,讲的直白一点它其实就是个jar包,就是一个封装了代表各种相关的类的.jar文件 2.框架之间有类型区别吗?   ...
  • zw901159
  • zw901159
  • 2016年05月12日 14:54
  • 446
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:struts带来的巨大烦恼…是不是系统做大了都不能使用struts?
举报原因:
原因补充:

(最多只允许输入30个字)