J2EE的體繫結構 - 簡單介紹

來源:互聯網
上載者:User
 

J2EE 即Java2平台企業版,它提供了基於組件的方式來設計、開發、組裝和部署公司專屬應用程式。J2EE使用多層分布式的應用程式模型,這個多層通常通過三層或四層來實現:

         1、客戶層,運行在客戶電腦上的組件。
         2、Web 層,運行在J2EE伺服器上的組件。
         3、業務層,同樣是運行在J2EE伺服器上的組件。
         4、公司資訊系統層(EIS),是指運行在EIS伺服器上的軟體系統。
      
         以上層次一般也指三層應用,因分布在三個不同位置:客戶電腦、J2EE伺服器及背景資料庫或過去遺留下來的系統。請看圖例:           

 

       J2EE組件

         J2EE應用程式是由組件構成的。J2EE組件是一個封裝了功能的軟體單元,能夠與相關的一些類和檔案一起組成J2EE應用程式。
         1、應用程式用戶端和Applet是指運行在客戶電腦上的組件。
         2、基於Java Servlet和JSP技術的組件叫Web組件,它們運行在伺服器上。
         3、企業JavaBean(EJB)組件叫業務組件,同樣運行在伺服器上。

      J2EE用戶端

         J2EE用戶端可以是一個Web組件或者是一個應用程式用戶端。
         1、Web用戶端  
         包括兩部分,首先是那些動態Web頁面(HTML、XML等),這些組件運行在Web層;另一個是Web瀏覽器,由客戶機上的瀏覽器從伺服器接收並且解析和顯示Web頁面。
         2、小應用程式(Applet) 
         需要運行在用戶端安裝了Java虛擬機器的Web瀏覽器上。
         3、應用程式用戶端
         J2EE 應用程式用戶端運行在客戶機上,能提供強大而靈活易用的使用者介面,如使用Swing或AWT建立的圖形化的使用者介面(GUI)。應用程式可直接存取運行在業務層的企業Bean,如果需求允許,也可以開啟HTTP串連來建立與運行在Web層上的Servlet之間的通訊。
         4、JavaBean組件架構
          在伺服器和用戶端兩層中也可能包括了基於JavaBean的組件架構,通過JavaBean來實現資料的流動,可以是在應用程式客戶或Applet與運行在J2EE伺服器上的組件之間,或者是在J2EE伺服器和後台資料庫之間。(不過JavaBean組件並沒有包含在J2EE規範裡)
         5、J2EE服務的通訊
         客戶層與J2EE伺服器上啟動並執行業務層之間的通訊可以是直接的,也可以通過運行在Web層中的Servlet和JSP來實現,在這種情況下,客戶運行在瀏覽器中。

         Web組件

         J2EE的Web組件可以是Servlet或JSP頁面。在應用程式組裝過程中,靜態HTML頁面和Applet也可以一起打包成Web組件,但這並不是J2EE規範所認可的Web組件。

         業務組件

          業務代碼是指那些由位於業務層的企業Bean(EJB)執行的邏輯,它們能夠解決或滿足特定的商業領域的一些需求。有三種不同類型的企業Bean:會話 Bean、實體Bean和訊息驅動Bean。會話Bean代表客戶一次短暫的會話過過程,當客戶執行完成後,會話Bean以及它所包含的資料也隨之消失。實體Bean代表的是持久的資料,即儲存在資料庫表中的一行記錄,即使客戶終止或者伺服器關閉,在J2EE底層的會服務確保實體Bean的資料被儲存下來。

         公司資訊系統層

         公司資訊系統層處理公司資訊系統的軟體,包括企業組織圖系統,例如企業資源計劃(ERP)、大型的交易處理、資料庫系統及其他曆史上遺留下來的資訊系統。

        歸納幾個概念:

         EJB

         即Enterprise JavaBean,一種組件架構,用於開發和部署物件導向的、分布式的、企業級的應用程式。所開發的應用程式使用EJB架構來實現可擴充性及管理事務和安全。
         EJB 包括會話Bean(session bean)、實體Bean(entity bean)和訊息驅動Bean(message-driven bean)。其中會話Bean分為無狀態會話Bean(stateless session bean)和有狀態會話Bean(stateful session bean)。而實體Bean又分為Bean管理實體Bean和容器管理實體Bean。由於這種Bean對應於資料庫中的記錄,所以資料庫記錄的任何改變也被同步到組件池中的相關Bean中,這個過程叫做持久性(persistenced),這是實體Bean最重要的一個特徵。根據持久性操作方式的不同分為:容器管理持久性(Container-Managed Persistence,CMP)和Bean管理持久性(Bean-Managed Persistence,BMP)。

         容器

         即 container,一個實體,它管理著組件的生命週期、安全、部署和運行時服務。每個類型的容器都只提供與相應類型的組件相關的服務,如EJB、 Web、JSP、Applet和應用程式用戶端。其中,EJB容器和Web容器都運行在J2EE伺服器中。

         J2EE

          即Java 2 Platform Enterprise Edition,Java 2 平台企業版。是開發和部署公司專屬應用程式程式的一種平台或環境。它由一系列服務、API(API)、提供多層開發的功能性的協議以及基於Web的應用程式組成。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.