Enterprise Bean 是一組實作 Enterprise JavaBeansTM (EJB) 規格的 JavaTM 類別和介面。EJB 規格是 Java 2 Platform Enterprise Edition (J2EE) 規格的一部分。J2EE 是一組延伸 Java 2 Standardized Platform Standard Edition (J2SE) 的標準化 Java 技術。 以下是 J2EE 所包括的一小部分技術:
利用 J2EE 規格來撰寫的應用程式很容易部署在提供 J2EE 支援的任何伺服器中,如 IBMR 的 WebSphereR Application Server。
EJB 規格最新的版本是 2.1。 工作台支援 EJB 規格的多重版本,其中包括 1.1、2.0 和 2.1。 您會見到工作台參照不同的規格層次。 比方說,當建立新的儲存器管理持續性 (CMP) Entity Bean 時,您可以選取 1.x 或 2.x 的 CMP 版本,它們分別對應於 EJB 1.1 版或 2.0/2.1 版。
如果需要 J2EE 和 EJB 技術的詳細資訊,請造訪下列網站:
您可以在資訊中心的下列主題中,找到使用這些技術的相關資訊:
EJB 規格定義下列項目:
企業應用程式可以安裝及執行於 EJB 伺服器(也稱為 Enterprise Java Server)中,如 WebSphere Application Server 所提供者便是如此。伺服器的作業是提供 Enterprise Bean 執行其中的 EJB 儲存器。EJB 伺服器和儲存器共同作業來提供這些服務:
用戶端應用程式不會直接存取 Enterprise Bean。 相反地,這時會提供介面來列出用戶端所能使用的 Enterprise Bean 方法。 儲存器會提供在 Enterprise Bean 中的介面實作。
Enterprise Bean 有三種類型:Session Bean、Entity Bean 和訊息驅動 Bean。 典型的 EJB 應用程式由若干 Entity Bean 以及 Session Bean 或訊息驅動 Bean 組成。
Entity Bean 用來代表關聯式資料庫表格以及與關聯式資料庫表格互動。Entity Bean 通常代表資料庫表格中的一列,表格直欄對應於 Bean 中的欄位。 資料持續性指將資料永久儲存在資料庫中,或儲存成其他格式。EJB 儲存器可以處理 Entity Bean 的持續性(儲存器管理持續性或 CMP),Entity Bean 也可以處理它自己的持續性(Bean 管理持續性或 BMP)。
Session Bean 用來與 Entity Bean 互動。它們通常會提供用戶端應用程式的整體程序或工作流程。Session Bean 可能 Stateless(未儲存任何資料),也可能是 Stateful(儲存了某些資料)。 應用程式用戶端通常會與 Session Bean 互動,Session Bean 則會使用 Entity Bean。
訊息驅動 Bean 提供想要存取 Entity Bean 之應用程式的通訊機制。 它們也可用 Session Bean 的相同方式來使用。 主要的差異在於它們的呼叫方式。Session Bean(和 Entity Bean)是以同步方式來呼叫的,訊息驅動 Bean 則是以非同步方式來呼叫。 同步呼叫 Session Bean 會直接呼叫 Session Bean。 對於訊息驅動 Bean 的非同步呼叫會傳送一則訊息,訊息驅動 Bean 會接聽這則訊息。Java 傳訊服務 (JMS) 是訊息驅動 Bean 的基礎通訊工具。
請參閱資訊中心的 EJB 架構,以取得 Enterprise Bean 類型的詳細資訊。
Enterprise Bean 包含下列類別和介面:
用戶端應用程式利用本端和遠端元件介面來存取 Enterprise Bean。 這些介面會列出 Enterprise Bean 中的可用商業邏輯方法。Enterprise Bean 可以有遠端介面或本端介面,或同時有這兩者。
當您利用本端介面而不是遠端介面來存取 Enterprise Bean 時,效能會比較好。 效能提升的部分原因如下:
本端介面已新增在 EJB 2.0 規格中,以提升效能。 建議的設計方式是將 Entity Bean 包裝在 Session Facade 中,以便用戶端從遠端存取 Session Bean,但 Session Bean 則在本端環境存取 Entity Bean。 這個方式可讓用戶端從遠端存取,且效能會比較好。
用戶端應用程式也會利用 Entity Bean 的 Home 介面來存取 Enterprise Bean,但這個介面所能使用的方法是生命週期方法,其中包括在 EJB 儲存器內尋找、建立和移除 Entity Bean 等方法。Home 介面也可以在遠端或本端。
Enterprise Bean 類別包含企業應用程式的商業邏輯。 介面中的方法會將 Bean 類別中對應的方法呈現給用戶端應用程式。
主鍵是一個關聯於資料庫中特定項目的唯一 ID。 比方說,如果您有一個員工資料庫,每個員工都有唯一的員工 ID。 每個主鍵類別實例都對應於某個唯一 ID,因此,也對映於資料庫中的特定員工記錄。
J2EE 規格定義了企業應用程式的檔案和目錄結構。 另外,它還會指定 .war、.ear 和 .jar 檔案類型,每個類型都有特定用途。
EAR 檔(企業保存檔)是企業應用程式的套件類型。 它包含 WAR 檔和 JAR 檔,以及包含企業應用程式 Meta 資料的應用程式部署描述子 (application.xml)。
WAR 檔(Web 保存檔)包含 Web 應用程式的檔案,如影像、HTML 檔、Servlet 和 JSP。 它也以 Web 部署描述子 (web.xml) 的形式來包含 Meta 資料。
JAR 檔(Java 保存檔)包含 Java 類別。 在 EJB 應用程式中,JAR 檔可包含 EJB 模組,它們也可以包含 EJB 用戶端應用程式。
EJB 模組包含 Enterprise Bean 本身,以及包括 EJB 部署描述子 (ejb-jar.xml) 在內的 Meta 資料。 部署在 WebSphere Application Server 中的 EJB 模組也可以包含說明 IBM 專用延伸規格和連結資訊的 Meta 資料。 EJB 用戶端應用程式包含用來存取 EJB 應用程式的 Java 程式,以及用戶端部署描述子 (application-client.xml)。
檔案類型 | 意義 | 應用程式類型 | 部署描述子 |
---|---|---|---|
.ear | 企業保存檔 | 企業 | application.xml |
.war | Web 保存檔 | Web | web.xml |
.jar | Java 保存檔 | EJB EJB 用戶端 |
ejb-jar.xml application-client.xml |
視覺化編輯器利用統一建模語言 (UML),以視覺化的方式呈現 Java 類別和介面的結構與設計,其中包括 EJB 元件。 它提供用來顯示類別之間的關係及工作流程的機制。 當在工作台內使用 UML 工具,您可以利用視覺化的方式來編輯 Java 類別和介面或其他 EJB 元件。 您可以直接從類別圖解中,起始 EJB 元件的建立程序。 這會產生基礎程式碼,再以視覺化的方式呈現在類別圖解中,完成編輯準備。 變更 UML 類別圖解,也會改變基礎程式碼。 基礎程式碼的變更,也會反映在 UML 類別圖解中。
在工作台中,UML 類別圖解儲存成副檔名為 .dnx 的檔案。
UML 2 是 Object Management Group (OMG) 所提供的標準規格。另外,OMG 網站也提供了 UML 簡介。
資訊中心提供了深入瞭解這些主題的資訊:
現在您已準備好開始進行練習 1.2:準備工作區。