最近关于.NET和Java开发成本的讨论比较热门,企业Java领域的专业咨询人员、讲师、软件架构师和开发者Adam Bien认为,至少有9点理由表明Java EE 6可以让你节省投资。有关Java EE 6的具体情况,可以参考51CTO之前介绍的Java EE 6平台的主要目标,以及Java EE 6中新增的JAX-RS以及依赖性注入的功能。
1、原型构建
一般来说,企业Java项目最初期的工作是评价使用哪一个框架。这个工作所花费的时间可长可短,有可能几个小时也有可能几个月。Java EE 6具有“一站式购物”的特点。你可以下载包含IDE(Eclipse、NetBeans、Jdeveloper和商用IntelliJ)的Java EE 6,就开始开发之路。你可以在数分钟内安装和开发一个原型。另外,该工具包的体积也不大。
2、开发
Java EE 6实现是轻量级的。GlassFish包含Web配置集(Web Profile)的大小仅为30MB,全功能版则为70MB。部署时间也非常短,而且支持现成的递增式部署。需要你做的只是保存相应文件。其它应用服务器,诸如JBoss、Caucho的Resin、Geronimo/openEJB,同样也是轻量级的。由于大多数库和框架已经在服务器上包含,你只需要部署应用程序代码。部署存档文件主要包含你的应用程序代码,因此体积也非常小。
3、生产
GlassFish、JBoss、Geronimo和其它可能的工具都采用开源模式。你可以决定自己是否需要商业化支持。你可以选择以小规模起步,然后逐步扩展。
4、授权许可
Java EE 5/6应用的便携性令人吃惊,它不再需要厂商特定的部署描述。你可以轻松的将自己的应用程序从一个服务器移植到另一个,实际需要做的就是把WAR/EAR存档文件从一个目录拷贝到另一个。自从Java EE 5推出以来,我们实际就是采取这种做法来确保应用服务器的独立性。记住,你在获得更好许可/支持服务方面处于有利形势。你无需依赖于某个特定厂商,可以选择最令你感兴趣的一家。
5、培训/知识
你“只需”学习Java EE 6和它的API,入门非常简单。而且这种知识是通用的,可以被应用到市面上其它任何应用服务器中。如果你已经会用Java EE 5,你将会非常喜欢Java EE 6。
6、便携性
原先的老J2EE 1.X项目可以很轻松的被移植到Java EE 5/6。Java EE 6容器依然支持老版编程模式。移植你的应用非常有趣,它主要是删除以前多余的东西。J2EE 1.X和Java EE 6甚至能够和平共处。
7、普及
Java EE 6使用JCP开发。与其说它的开发者是Sun公司,倒不如说是社区和所有主流厂商。IBM、甲骨文、SAP、Red Hat、谷歌和Spring Source/VMWare都贡献了API。Java EE 6规范的普及度预计不会比Java EE 5差。目前大约有14个不同的认证Java EE 5服务器。
8、选择自由/投资保护
由于Java EE 6的开发者是社区,而不是某一个厂商,它将保持稳定。某一家厂商不可能擅自修改/打破该规范。相比其它语言,这是Java/Java EE的巨大优势。无需任何修改,你过去的J2EE 1.4应用程序依然可以运行在当今的Java EE 5/6服务器上。(当然,在Java EE的标准制定上也并非没有争议,读者们可以参考51CTO之前报道的《Java EE 6,貌似民主下的虚伪公平》一文。)
9、风险移植/备选方案
如果出于某些原因,你发现Java EE 6不适合你,移植到Spring等替代技术相对非常容易。它们的组成模式(EJB、CDI/Spring)想非常类似的。