就我觉得STRUTS比WEBWORK难理解多了...
看了楼主的高论,我终于发现什么叫无知和自大了!

唉,其实程序员中这样的人也太多了。

80个表的系统叫大系统?
这几天我在整理我们系统的表,清除一些非核心的表如临时表等后有670个。

我是看了MVC后,才知道以前的系统为什么不好维护和测试了。
懂了MVC后,部门的工作安排也有头绪多了,每个人的职责也很明确。
懂了struts后,再看其它的框架就很容易理解了,可以说struts是个基础。

以前我都不敢随便对一个框架进行评论,因为自己还不是很懂,看到楼主的评论后,我真佩服他的胆量:)

这里都是struts的布道者,你也不看JDON是干嘛的,JdonFramework是干嘛的,所以还是不要碰硬的好,东西好不好对程序员来说不是靠市场检验的,也要靠人气,大家说好就是好,中国程序员就是如此。闭们造车,以前UML大家都说好,都在学,现在呢?有多少人真正程序员领会到其中的优势和精髓。
同意kongxx 说的“简单就是美,效率就是美! ”,现在开发平台也很多,无非都是在开源的基础上修改,真正实现构件化,不是MVC就能解决的问题,是效率,是稳定,方便维护,试想你开发的东西,交给客户维护成本要有多高,估计自己做的东西也只有自己可以看懂。本人新接触emaker这样的产品,基本满足这样的要求,能够打破语言的界限。全部可视化的开发。
花了一个多小时看了九页帖子,
总的很让我失望.
我是一个java初学者,
学了8个月java,也是个jsp初学者,学了4个月.
学java的前4个月才开始学html,网页制作工具和asp(大家别见笑).
用asp写过整站程序(当然不大,就是一些简单的新闻系统,文章管理系统).
没用jsp做过大东西,但写过一个简单的jsp+servlet+javabean的博客程序.
虽然我与以上高手都不是一个档次的,甚至有点不敢同贴而语,但我还是要说几句.
稍对网站架设有点深入的人其实会面临一个问题那就是怎样规划.说的专业一点就是设计模式.如果处理不好后期连自己都会被搞胡涂,别说维护或修改程序的人.更何况要是团队合作,必须制定严格的规范.
整个设计下来,如果设计的好的话其实完全会搞出自己的一套mvc方案.但你的方案是否会比struts强大?别人学你的规范会不会更容易?更何况有些标准或规范虽然谁都知道不是最好的,但大家都在用,原因就在于其应用的广泛性,大家交流的成本会降低.现在说struts大多人都知道是什么(不知道的随便一查也就知道了),但如果你说你的自己规范别人会懂?恐怕你得把整个规范的定义文档都发出来吧?这就是标准的好处.

我最近要给学校做一个规模还可以的系统(相对于我以前做过的),想用struts架构.接触struts还不到一个月,但一开始我就被struts的模式吸引住了.今天早上完成了一个简单struts流程,但遇到些麻烦.于是想到网上找找高手们的见解,于是看到了这个贴子.我抱着很大的兴趣,希望能在帖子中找到一些对struts的不足的深刻分析和对应的解决方案,但结果太让我失望了.说struts不好的人就会说struts是垃圾,说好的人就是骂说不好的人,骂过了struts就好了.没人举个例子什么的说明struts相对于其他设计模式的优点,说不好的人也没具体指出到底什么地方不好,以及对应的解决方案.
记得在程序员杂志上看过一篇文章,J2EE without EJB,介绍一位国外高手(名字我不记得了)的同名著作.人家在批评EJB的同时也提出了自己的建设性方案,即使你不接受人家的观点,但你也的承认人家分析的有道理.
而我们呢?这个论坛还说是高手云集的地方,唉真的让我这个初学者失望了.不知那些老把中国人的劣根性挂在嘴边的人反省过自己没?

我是一个文科学生,以上东西都靠自学.现在学的挺吃,所以真的希望能得到高手的一些实质性的指点.如果有高手愿意收我这个徒弟请与我联系:
QQ 116551248
Email gongjiezi@163.com
我自认悟性还可以,有时只需要在关键之处指点一二,不会耽误您很多时间.再此先谢过了.期待着.

赞成!
如果只是空谈技术而抛弃业务,那就是机械的,形而上学的。
技术只是外因,通常开发一个项目,需求:设计:编码基本上按5:3:2来做。编码只占很小一部分,最重要的是需求这条基线。如果需求经常发生较大的变动,那么不管你用什么技术,都是让人抓狂的。
在此,楼主在传达一种观念,那就是认为技术或者工具可以左右一切。的确,劳动工具是判断一个时代文明的标志。但是工具都是人根据一定的历史需求创造出来的,而业务的发展属于历史发展长河的一部分,我们应该专注于历史的发展去使用或者创造合适的工具,而不是让工具来左右历史的发展。工具只有适合与不适合之分,而判断工具是否适合的标准并不是根据创造这种工具的人的智力水平高低
举例来说,你说创造奶嘴的人的智力水平能有多高?而现在每个婴儿都使用它。那这是为什么?只有两个字--适合!
所以我的观点是:做项目的本质在于紧紧抓住需求,关键在于选择合适的工具。
可叹阿!

一个struts就让大家讨论了这么久?
我真的不理解。

无论好与坏,我们要那小平同志的话“实践是检验真理的唯一标准!”。
你用了,了解了,知道他是怎么回事,你才能说好或坏!
没有用,不知道你怎么知道他不好或好?

我的网站在改版.今天在这里就在这把struts分析一下.
分析struts有几个前提.
1.mvc
2.xml的解析,以及使用配置文件的益处.
3.设计模式和oo
4.java reflect

这几项内容,不再详细说,也不是很简单的就能说完.
了解这些后,你自己就能写自己的struts实现了,也许到这个时候,才能评论struts的优劣.

struts的核心是其配置文件.
入口时ActionServlet.
在系统部署后,或第一次请求的时候(两个时机都可以,但前者更好),struts解析配置文件.请求过来时,根据客户端的url,在配置的缓存中得到匹配的action,如果该action有form,填充form先,执行action的excute方法,返回结果.

在实现上,struts采用大量设计模式,比如template method 等等,很多,并且,采用配置文件,为自定义的解决方式提供入口 .

这又什么问题?
就这么点东西讨论了9页?
还是使用一下,再思考一下吧.

也许我太认真了.
可是仅仅一个struts而已.
还有那么多的东西,
要用多少时间来搞明白?

我是刚入道的小生。现在正在学习MVC模式和逐步改成用struts做项目。
有好多含糊的东西。所以对各位大师的发言不敢随便评论。
我想问问给位。项目中是好些东西都要用自定义标签作吗?我看过些资料,好象用的很多啊~还有过滤器里面都写了什么东西啊,我现在只写了字符集,不知道什么东西还要写在里面好啊,请各位多指教啊~~
实在不想对楼猪的井底之蛙再多说什么

总之外面的世界一直很精彩,别人说一下也是好事

Which framwork?

The balance and the antagonism of the specification and the performance.

我不想说谁对谁错,我只觉得楼主可能没真正理解Struts,而且你可能对MVC模式的理解也不是很透彻。如果楼主真的把Struts的大部分技术应用到项目上的话,可能就会有另一种感觉了。Tiles、Validate等的优势是显而易见的,FormBean的自动提取数据功能就更不用说了。
楼主所说的光一个分页就搞了很久,那可能就是你们项目中用于自动分页的类封装得还不够合理。Microsoft的东西是封装得很好,但不知道楼主有没有想过,如果你试着在.Net中扩充一个功能,几乎是不可能的!
我建议楼主先试着用Struts做一个小项目,然后尽量把各项技术应用上去,到时候你就会发现Struts的真正意义了。
楼主说编写软件已经有5,6年了,这一点我不是很同意,不是说你代码写多了你就是一个高级人才了,重要的是你这5,6年都在做什么。是机械式的拷贝、粘贴,还是不断地在思考如何更好地改进?倚老卖老并不可取,过去只能证明过去,并不代表现在,更不可能影响将来。俱往矣,数风流人物,还看今朝!
> 请问仁兄,做过2亿的项目吗??

2亿,听都没有听过。如果有的话,肯定不会用strus!

在某个地方某些人讨论的话题中,他们在比较web框架,他们在深入到底什么地方不好,哪些地方可以自己来做更改重新设计,哪些地方设计优美,但是他们从来没说自己多么nx。
楼主的态度实在不敢恭维……估计确实是asp做多了
java确实要靠巨头圈出地来赚钱,有些东西确实不是那么好用。但是搞开源的人可不是这样。struts设计再不好,上面也没说出来个一二三四,就是一个劲得不好不好。用java和php在某些方面比较是不公平的。强类型在写简单应用的时候当然比不上弱类型。否则ruby python不是要一统天下了?
说实话,我看了半天才注册的。我感觉大家有争论很不错。我是一个初学者。在浅水区里面游了好几年,一直都没有什么好的成绩,自认为自己是一个管理方面的人才,而且现在也在从事这方面的工作。我觉得大家说得都很好,除了涉及到人格/奴性 什么的(平台之间的对比也是可以理解的)。我觉得其他都很不错。发泄一下牢骚都可以。但是,我们看着很辛苦啊。我也看到了,上面的兄弟们也说了,看了半天好像没有什么技术上的东西。但是我在这个讨论中看到了我很多值得借鉴的东西,至少我知道了,如果我去学习struts 应该侧重哪个方面,在项目开发中,应该注意哪些方面,浮躁是不好的。应该正确理解一些问题。或者说我们从不同的角度看问题,会有不同的结果,正确的取舍是很重要的。另外,足够的沟通是重中之重啊!不然,你看自己的问题没有说清楚,本来想说的事情没有说清楚,反而引来了一些没有必要的争论和麻烦!