J2EE的概念以及容器概念總結

J2EE的概念:

整體來說,J2EE是java技術不斷適應和促進企業級應用過程中的產物,是使用Java技術開發企業級應用的一種事實上的工業標準。它包含了許多的組件,主要可以簡化並且規範應用系統的開發和部署,進而提高可移植性、安全性以及再用價值。

容器的概念:

廣義上講容器是用來包裝或裝載物品的貯存器(如箱、罐、壇)或者成形或柔軟不成形的包覆材料。在編程領域中,容器提供組件運行的環境,容器本身可以提供一組服務,讓組件按標準方式利用。這裏的容器容器比現實中的更爲抽象,但思想是想通的。


J2EE容器圖

容器的分類:
J2EE規範定義了四種容器,分別是:小程序(Applet)容器、應用程序客戶機(ApplicationClient)容器、Web應用程序容器、EJB應用程序容器。開發B/S系統的人員,經常接觸到的是Web應用程序容器和EJB應用程序容器。    

EJB容器
EJB容器是服務器端容器,包含的組件是EJB(EnterpriseJavaBeans),作爲J2EE的核心之一,它的主要作用是用於服務器端的商業邏輯實現。在EJB的規範定義中,定義了一個開發和部署分佈式商業邏輯的框架。用以簡化企業級應用的開發,使EJB容器具備可伸縮性、可移植性、分佈式事務處理以及多用戶等。 企業 Bean 分爲三種類型:會話 Bean、實體 Bean 和消息驅動 Bean。會話 Bean 表示瞬態對象和進程,並且通常由單個客戶機使用。實體 Bean 表示持久性數據,通常保留在數據庫中。消息驅動 Bean 用於將消息異步傳送到應用程序模塊和服務中。

Web容器
Web容器是服務器端容器,管理所有J2EE應用程序中JSP頁面和Servlet組件的執行,JSP和Servlet都是Web服務器的功能擴展,接受Web請求並返回動態的Web頁面。它是一種服務程序,就是爲應用服務器組提供一個運行環境,使JSP、Servlet直接跟容器中的環境變量 接口交互,不必關注其他系統的問題。

Applet容器
Applet是客戶端容器,包含的組件爲Applet。它是嵌在瀏覽器中的一種輕量級客戶端,在一般情況下,只有當使用Web頁面無法充分表現 數據或者應用界面的時候纔會使用它。Applet是代替Web的一種手段,而且Applet無法使用J2EE的各種服務和API,這時爲了安全性的考慮。 要注意的是,我們只能通過J2SE開發Applet。

Application Client容器
也是一個客戶端容器。Application Client相對於Applet是一種重量級的客戶端,因爲它能夠使用J2EE的大部分Service和API,而Applet不能。
J2EE通過這四種容器能夠靈活的實現企業級的架構。在這裏要說一下的是:在J2EE的各種服務和API中,JDBC和JCA用於企業資源(各種企業信息系統和數據庫等)的連接,JAX-RPC、JAXR和SAAJ則是實現Web Services和Web Services連接的基本支持


容器的作用:


上圖很形象的爲我們描述了容器與組件的關係,不同類型的組件存放在不同的容器中,容器爲它裏面的組件提供運行的環境等基礎支持。從某種意義上說,容器也是抽象、提取的結果,它將組件中公用的東西提取出來,提前爲我們實現,給我們的開發帶來了很大的便利。同時我們注意到:J2EE組件包括了Servlet和Jsp兩個Web組件和EJB組件。

J2EE中容器與服務器的區別:
    web容器只能來進行靜態網頁之間的交往,但是當需要顯示JSP和Servlet的時候要用到web服務器,即:一般的情況下web容器和web服務器在一個軟件(Tomcat)上就能體現出來。
   web服務器(Tomcat)和應用服務器(JBoss)之間的區別:web服務器主要用在顯示層(JSP和servet),而應用服務器是用在業務邏輯層的,從某種意義上web服務器屬於應用服務器的子集。
    J2EE應用服務器要實現J2EE的十三種規範。比如:JBoss就實現了J2EE的所有規範,而Tomcat沒有全部實現,所以JBoss是J2EE應用服務器,而Tomcat不算是J2EE應用服務器。
    servlet服務器屬於web服務器,用來管理servlet的生命週期,而應用服務器(Jboss)是將業務層的bean在容器中管理。
    tomcat屬於web服務器,jboss,weblogic,webspere屬於應用服務類。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章