Java Bean 是可復用的組件,對Java Bean并沒有嚴格的規范,理論上講,任何一個Java類都可以是一個Bean。但通常情況下,由于Java Bean是被容器所創建(如Tomcat)的,所以Java Bean應具有一個無參的構造器,另外,通常Java Bean還要實現Serializable接口用于實現Bean的持久性。Java Bean實際上相當于微軟COM模型中的本地進程內COM組件,它是不能被跨進程訪問的。Enterprise Java Bean 相當于DCOM,即分布式組件。它是基于Java的遠程方法調用(RMI)技術的,所以EJB可以被遠程訪問(跨進程、跨計算機)。但EJB必須被布署在 諸如Webspere、WebLogic這樣的容器中,EJB客戶從不直接訪問真正的EJB組件,而是通過其容器訪問。EJB容器是EJB組件的代 理,EJB組件由容器所創建和管理。客戶通過容器來訪問真正的EJB組件。
解釋二:
也可以使用JavaBeans進行服務端應用開發,但JavaBeans模型沒有提供服務框架,當應用需要使用系統級服務(如事務管理,安全性,生命周期管理等)時,不適合。
2.EJB構件是可部署的,EJB構件可以作為獨立的單元被部署到EJB應用服務器上,是應用構件(application components),而JavaBeans構件是不可部署的, JavaBeans構件是開發構件,不能被部署為獨立的單元。
3.EJB構件是部署可定制的,使用部署描述符可以在部署EJB時對其運行時配置進行定制,而JavaBeans構件在部署時不能進行定制,JavaBeans構件的定制僅發生在開發階段,只能利用開發工具創建并組裝JavaBeans構件,部署時不能定制
4.EJB構件是分布式對象,可以被客戶應用或者其它EJB構件進行遠程訪問,而JavaBeans構件不是分布式對象,JavaBeans構件只能在其構成的應用中使用,不能提供遠程訪問能力
5.EJB構件對終端用戶不可見,運行在服務端,沒有人機交互界面,而部分JavaBeans構件對終端用戶可見,如GUI應用中使用的按鈕構件
posted @ 2012-05-08 20:58 Xing 閱讀(176) | 評論 (0) | 編輯 收藏