快速业务通道

两招提高Struts2开发生产力 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15

两招提高Struts2开发生产力

时间:2011-09-09

我们知道开发Java EE Web应用最大的弊病当属Redeploy时候无奈的等待. 这是对成本的最大浪费. 假设一个公司有100名开发人员, 每人每小时需要reload应用10次(实际上可能不止十次), 每次耗费10秒, 而每个程序员每小时的薪酬是50元, 那么我们可以计算一下多出的时间:

一小时的等待时间: 100 x 10 x 10 = 10000 秒

一天的等待时间: 10000 x 8 = 80000 秒 = 1333 分钟 = 22 小时

一天的额外成本是: 1111 元

22个工作日的成本: 2,4444 元 ==> 可以再招好几个新员工了!

1年的成本: 29,3333元

OK, 这些讨论仅限于理论上的.

要提高Struts 2开发效率, 最主要的是修改了Struts配置文件后不要重新载入应用就能生效, 这可以通过以下配置做到:

src/struts.properties

struts.devMode=true

struts.i18n.reload=true

struts.configuration.xml.reload=true

这两个选项, 可以保证提供额外的出错信息(帮助开发人员定位错误位置), 国际化资源文件和配置文件修改后可以被立即自动重新载入(注意也能载入include文件的修改), 这个特性是N多其他框架所没有的.

两招提高Struts2开发生产力(2)

时间:2011-09-09

那么另一个常见的问题就是修改了类文件后需要重新载入应用才能生效, 这个问题可以通过JavaRebel来搞定, 下面是 MyEclipse 中的Tomcat配置:

这两招下来, 可以在新加入类以及Struts配置修改后, 完全无需重启或者重新发布即可立即测试! 在JAR包暴多的情况下, 可以让我们不再等待10到20秒了!

JavaRebel在加入父类时无法工作, 但是有人反映说JavaRebel无法正确显示Debug时的类行号, 也许那是老版本时候的事情了, 我个人认为这是谣传(以讹传讹吧), 因为我用了三个月了, 一直还没遇到过, 我用的是最新版. 所谓实践出真知, 各位看截图(除0的代码是新加入的一行):

当然了, 也许他们说的是Eclipse特有的Debug模式所产生的问题, 那个所谓的Debug模式启动服务器, 一不小心就给Suspend到Tomcat的某个类中了, 点N次Resume才能见到结果,, 所以我一般不用. 按照我的理解输出内容等等, 查看错误行号等都是调试.

当然,欢迎各位提供无法正确显示行号时的截图. JavaRebel我弄到了一个个人免费的许可, 真的是很好用啊.

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号