您的位置:首页 > 其它

为什么要使用EJB

2007-05-11 22:52 381 查看
经常有同学问我这样的问题:现在企业使用EJB的多吗?什么情况下会使用EJB?为了回答这个问题,我们首先要知道EJB的目标是什么。
EJB的目标
在EJB的规范中描述的EJB的目标如下:
Ø 企业JavaBean架构将成为使用Java2编程语言构建面向对象的业务应用的标准组件架构。
Ø 企业JavaBean架构将成为使用Java2编程语言构建分布式的业务应用的标准组件架构。
Ø 企业JavaBean架构将支持Web Service的开发、部署和使用。
Ø 企业JavaBean架构将简化应用程序的编写:应用开发者不必理解底层的事务和状态管理细节,多线程,连接池,或者其它的复杂的底层API。
Ø 企业JavaBean应用将遵循Java编程语言的“Write Once, Run Anywhere™”特性。企业Bean开发一次,可以不重新编译或者修改源代码而直接部署在多个平台上。
Ø 企业JavaBean架构将解决企业应用生命周期中的开发、部署和运行等各方面问题
Ø 企业JavaBean架构定义协议来保证来自不同厂商的开发、部署组件的工具能够在运行的时候相互协作
Ø 企业JavaBean架构使得使用不同厂商的工具开发的组件来构建应用成为可能。
Ø 企业JavaBean架构将提供企业BeanJava EE组件以及非Java语言编写的应用之间的交互
Ø 企业JavaBean架构将与已经存在的服务器平台兼容。厂商能够通过扩展他们已经存在的产品来支持企业JavaBeans。
Ø 企业JavaBean架构将与其它Java API兼容
Ø 企业JavaBean架构将CORBA协议兼容
(上面的内容来源《Java EE5实用教程——基于WebLogic和Eclipse》)
目标解读
对于上面的内容可以从以下几个方面理解:
要成为标准组件架构、不同厂商的工具可以相互协作:如果成为标准,将会有众多的EJB提供者、使用者、和工具提供者,应用前景绝对可观。
用于分布式:可能涉及数据的分布式、处理过程分布式以及管理的分布式,这样意味着EJB绝对不是为了小的应用。
要支持Web Service、要与其他Java EE组件或者非Java应用交互、要与已经存在的服务器平台兼容、要与其它的Java API兼容、要与CORBA协议兼容,由此可见EJB绝对不是为了处理简单的问题。
简化应用程序的编写,包括组件的编写和使用。应用开发者不必理解底层的事务和状态管理细节,多线程,连接池,或者其它的复杂的底层API。如果没有这些支持,我们要开发分布式应用,可能需要考虑很多东西,而现在简化多了。
目前公司的应用情况
在2006年《程序员》的调查中,使用EJB的应用的比例是13%,应该说这个比例不高,本人认为可能的原因有两个:
第一, EJB主要用于大型分布式系统,而实际上现在很多系统还都比较简单,尤其是独立的网站特别多。以至于JSP的应用能到61%。
第二, EJB的功能非常强大,并且比较复杂,所以学习的难度比较大。
而在今后,这两个方面都应该会发生变化,而且是朝着有利于EJB的发展的方向发生变化。软件系统在企业中的作用越来越明显,今后会有更多的企业愿意花更多的钱来开发满足企业发展的复杂的系统,这时候EJB就可以有用武之地了。关于EJB的复杂性,从EJB3可以看出,已经有很大改进,现在EJB的开发与普通的JavaBean的开发已经没有太大的区别。
鉴于以上的分析,还是建议那些希望在Java方向发展的人不要放弃EJB,如果您学进去,会发现并不难,并且它里面很多思想对您会有深刻的影响。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: