J2EE的體系架構——J2EE
J2EE是Java2平臺企業版(Java 2 Platform,Enterprise Edition),它的核心是一組技術規範與指南,提供基於組件的方式來設計、開發、組裝和部署企業應用。J2EE使用多層分布式的應用模型。
J2EE分層:
客戶層,執行在客戶計算機上的組件,用戶與系統的接口邏輯,通過http協議的來訪問應用server。表示層,執行在J2EEserver上的組件,通過與業務邏輯層互動。將用戶須要的數據以適當的方式輸出。
業務邏輯層,相同是執行在J2EEserver上的組件。
企業信息系統層(EIS),是指執行在EISserver上的軟件系統。
以上層次一般也指三層應用,也就是客戶層+J2EE應用服務層+企業信息系統層。分布在三個不同位置:客戶計算機、J2EEserver及後臺的數據庫或過去遺留下來的系統。
客戶層
Web瀏覽器
也稱Webclient, 以標準格式來顯示從server傳遞過來的網頁,它們傳遞給瀏覽器時已經是HTML或者XML格式,瀏覽器正確的顯示給用戶。
小應用程序(Applet)
是嵌在瀏覽器中的一種輕量級client。當web頁面不能充分的表現數據或者應用界面的時候,才使用它,Applet是一種替代web頁面的手段。可以使用J2SE開發Applet。Applet無法使用J2EE中的各種Service和API。須要執行在client安裝了Java虛擬機的Web瀏覽器上。
應用程序client
J2EE應用程序client相對Applet而言。是一個較重量級的client,可以使用大多數的服務和API,它執行在客戶機上,能提供強大而靈活易用的用戶界面,如使用Swing或AWT創建的圖形化的用戶界面(GUI)。當然。應用程序可直接訪問執行在業務層的Bean,假設需求同意。也可以打開HTTP連接,建立與執行在Web層上的Servlet之間的通訊。J2EE應用server
兩大容器
EJB容器+Web容器,即業務邏輯層+表示層
Web容器
管理全部的Servlet等Web組件的執行。對響應客戶請求和返回結果提供了執行時的支持。
EJB容器:
負責全部的EJB的執行。支持EJB組件的事務處理和生命周期管理。以及Bean的查找和其它服務,支持J2EE多層架構的基礎結構。是一個控制業務實現的執行期環境,並提供事務服務、持久性、安全性等重要的系統服務,讓開發者不必開發基礎服務而將註意力集中在業務邏輯的實現。兩大組件
Web組件+Ejb組件
Web組件
與基於Web的client進行交互,J2EE中有三類Web組件:Servlet、JSP、JavaBean,Servlet是Webserver的功能擴展。接受Web請求,返回動態的Web頁面。
Web容器中的組件能夠使用EJB中的組件來完畢復雜的業務邏輯。值得註意的是靜態的HTML頁面和Applets不算是Web層組件。
EJB組件
包括三種不同類型的EJB:會話Bean、消息驅動Bean、實體Bean第一:會話Bean:著重業務邏輯的實現與控制,負責與Web層通信,給Web層提供訪問業務數據的接口。
當client完畢運行過程的時候。會話Bean及相關數據會消失。
第二:實體Bean:代表持久數據。數據相當於存儲在數據庫表中,它負責保存業務數據,給會話Bean訪問業務數據的接口。
第三:消息驅動Bean:用於接收、處理客戶通過JMS發送過來的消息,同意業務組件接收衣服的JMS消息。
企業信息系統層
負責執行企業信息系統軟件,包含ERP、數據庫、文件夾服務、其它遺留系統等。總結
J2EE所包括的各類組件、服務架構及技術層次。均有共同的標準及規格,讓各種依循J2EE架構的不同平臺之間,存在良好的兼容性。解決過去企業後端使用的信息產品彼此之間無法兼容,企業內部或外部難以互通的窘境。J2EE的體系架構——J2EE