J2EE體系結構
阿新 • • 發佈:2019-02-17
J2EE是Java2平臺企業版(Java 2 Platform,Enterprise Edition),它的核心是一組技術規範與指南,提供基於元件的方式來設計、開發、組裝和部署企業應用。J2EE使用多層分散式的應用模型。
J2EE分層:
客戶層,執行在客戶計算機上的元件,使用者與系統的介面邏輯,通過http協議的來訪問應用伺服器。
表示層,執行在J2EE伺服器上的元件,通過與業務邏輯層互動,將使用者需要的資料以適當的方式輸出。
業務邏輯層,同樣是執行在J2EE伺服器上的元件。
企業資訊系統層(EIS) ,是指執行在EIS伺服器上的軟體系統。
以上層次一般也指三層應用,也就是客戶層+J2EE應用服務層+企業資訊系統層,分佈在三個不同位置:客戶計算機、J2EE伺服器及後臺的資料庫或過去遺留下來的系統。
1.客戶層:
瀏覽器:也稱Web客戶端, 以標準格式來顯示從伺服器傳遞過來的網頁,它們傳遞給瀏覽器時已經是HTML或者XML格式,瀏覽器正確的顯示給使用者。 小應用程式(Applet): 是嵌在瀏覽器中的一種輕量級客戶端,當web頁面不能充分的表現資料或者應用介面的時候,才使用它,Applet是一種替代web頁面的手段,能夠使用J2SE開發Applet,Applet無法使用J2EE中的各種Service和API。需要執行在客戶端安裝了Java虛擬機器的Web瀏覽器上。
應用程式客戶端: J2EE應用程式客戶端相對Applet而言,是一個較重量級的客戶端,能夠使用大多數的服務和API,它執行在客戶機上,能提供強大而靈活易用的使用者介面,如使用Swing或AWT建立的圖形化的使用者介面(GUI)。當然,應用程式可直接訪問執行在業務層的Bean,如果需求允許,也可以開啟HTTP連線,建立與執行在Web層上的Servlet之間的通訊。
2.J2EE應用伺服器
兩大容器(一種服務程式,如處理java的tomcat):
EJB容器(Enterprise JavaBean)+Web容器,即業務邏輯層+表示層
Web容器:管理所有的Servlet等Web元件的執行,對響應客戶請求和返回結果提供了執行時的支援。
EJB容器:負責所有的EJB的執行,支援EJB元件的事務處理和生命週期管理,以及Bean的查詢和其他服務,支援J2EE多層架構的基礎結構,是一個控制業務實現的執行期環境,並提供事務服務、永續性、安全性等重要的系統服務,讓開發人員不必開發基礎服務而將注意力集中在業務邏輯的實現。
兩大元件:
Web元件+Ejb元件
Web元件:與基於Web的客戶端進行互動,J2EE中的元件:Servlet、JSP、等. Servlet是Web伺服器的功能擴充套件,接受Web請求,返回動態的Web頁面。Web容器中的元件可以使用EJB中的元件來完成複雜的業務邏輯。值得注意的是靜態的HTML頁面和Applets不算是Web層元件。
EJB元件 :包含三種不同型別的EJB:會話Bean、訊息驅動Bean、實體Bean
第一:會話(session)Bean:著重業務邏輯的實現與控制,負責與Web層通訊,給Web層提供訪問業務資料的介面。當客戶端完成執行過程的時候,會話Bean及相關資料會消失。第二:實體(entity)Bean:代表持久資料,資料相當於儲存在資料庫表中,它負責儲存業務資料,給會話Bean訪問業務資料的介面。
第三:訊息驅動Bean:用於接收、處理客戶通過JMS傳送過來的訊息,允許業務元件接收衣服的JMS訊息。