background image

JavaBean 与 EJB 区别?

 

您现在可能已在使用 JavaBean

 

,但还不了解它。如果有支持 Java 的浏览器,那么,

 

在桌面上使用 JavaBean 

 

就没有限制。使用的 Web 

 

页面可以将 bean 作为小应用程序的一部

 

分。您很快就会和作为浏览器可视部分的 JavaBean 

 

交互,然后,那些 JavaBean 将与服务

 

器上的 EJB 接口。这种能力也可以扩展到因特网和内部网。

  JavaBean   

和 Server Bean(

 

通常称为 Enterprise JavaBean (EJB))有一些基本相同之处。

它们都是用一组特性创建,以执行其特定任务的对象或组件。它们还有从当前所驻留服务

 

器上的容器获得其它特性的能力。这使得 bean 的行为根据特定任务和所在环境的不同而
有所不同。

 

  这开辟了巨大商机。因为 JavaBean 是与平台无关的,所以对于将来的解决方案,

 

供应商可以轻易向不同用户推出其客户机方的 JavaBean,而不必创建或维护不同的版本。

 

这些 JavaBean 可以与执行商业功能(例如订购、信用卡处理、电子汇款、存货分配、运输等)

 

的 EJB 配合使用。这里有巨大潜力,而这正是组件代理(WebSphere Application Server 企业
版)设计提供的那种潜力。

  JavaBean 是一种组件,它在内部有接口或有与其相关的属性,以便不同人在不

 

同时间开发的 bean 

 

可以询问和集成。可以构建一个 bean,而在以后构造时将其与其它 

bean 绑定。这种过程提供了先构建,然后重复使用的方法,这就是组件的概念。可以将这
种单一应用程序部署成独立程序、ActiveX 组件或在浏览器中。

  JavaBean 因其外部接口(即属性接口)而与纯对象不同。这种接口允许工具读取组

 

件要执行的功能,将其与其它 bean 挂钩,以及将其插入其它环境。JavaBean 设计成对单
一进程而言是本地的,它们在运行时通常可视。这种可视组件可能是按钮、列表框、图形或

 

图表 - 但这不是必需的。

  可执行组件

  Server Bean   

或 EJB 是部署在服务器上的可执行组件或商业对象。有一个协议允

许对其进行远程访问或在特定服务器上安装或部署它们。有一系列机制允许它们将服务安
全性、事务行为、并发性(由多个客户机同时访问的能力)和持久性(其状态可以保存多久)的

 

主要方面授权给 EJB 服务器上其所在的容器。当安装在容器中时,它们获得各自的行为,

 

该行为提供不同质量的服务,因此,选择正确的 EJB 

 

服务器至关重要。这正是 IBM 

WebSphere 企业版的优势所在。

  EJB 是设计成运行在服务器上,并由客户机调用的非可视远程对象。可通过多个

 

非可视 JavaBean 

 

构建 EJB

 

。它们有一个部署描述符,其目的与 JavaBean 属性相同:它是