技術已經越來越多地應用到大型網路系統開發中,本文中,筆者將介紹EJB(EnterpriseJavaBeans)的定義、基於EJB技術的應用系統結構模型以及EJB組件的內容和分類,最後結合基於EJB的結構模型和EJB組件開發了一個商務預訂系統。
EJB從技術上而言不是一種“產品”,而是一種技術規範。SUN公司對EJB的定義是:EJB的結構是開發和配置基於組件的分布式商務應用程式的一種組件結構。用EJB結構開發的應用程式是可伸縮的、事務型的、多使用者安全的。這些應用程式可能只需編寫一次,卻可以在支援EJB規範的任務伺服器平台上進行配置。總的來說,EJB是一個組件事務監控的標準伺服器端的組件模型。
基於EJB技術的系統結構模型
EJB結構是一個服務端組件結構,是一個層次性結構,其結構模型如圖1所示。該結構模型在通常情況下可分為客戶層、商務邏輯層和資料層,下面筆者對此作一簡單介紹。
圖1:基於EJB的應用結構模型
客戶層主要是用來滿足對整個系統的各種訪問需求並處理以下工作:
接收使用者的輸入,還可以對使用者的輸入進行分析檢查並作相應的處理;
顯示由伺服器端高層傳來的運行結果。
客戶層通常是由客戶進程組成,這些進程由瀏覽器動態地建立和撤銷。
商務邏輯層這是整個系統最關鍵的部分。商務邏輯層在通常情況下會分為兩層,其高層是請求接收層(一般稱之為Web層),用於接收從瀏覽器傳來的請求並將請求交給底層進行處理,同時將請求處理結果發送給瀏覽器。這些過程主要由JSP頁面、基於Web的Applets以及顯示HTML頁面的Servlets組成。底層是請求處理層(一般稱之為EJB層),包括監聽進程、處理進程和資料庫操作進程,負責處理請求接收層傳來的客戶請求並對它進行處理,同時將請求結果傳遞給請求接收層,如果需要的話還需要將處理結果交給資料層進行儲存。
資料層主要是為商務邏輯層提供資料服務,如儲存商務邏輯層處理結果、返回商務邏輯層檢索的資料結果,同時也是為了實現屏蔽資料來源的變化,從而實現當資料庫發生變化時我們只需修改串連資料來源的語句就可以。
EJB組件的分類
通常情況下,服務端的EJB組件有兩種基本類型:EntityBean(實體Bean)和SessionBean(會話Bean)。
圖2:商務預訂系統的構架