http://www.jdon.com/idea/j2eebasic.htm
J2EE容器分為WEB容器和EJB容器,Tomcat/Resin是Web容器;JBoss是EJB容器+Web容器等,其中Web容器直接使用Tomcat實現的。所以你開發的Web應用程序可以在上面兩種容器運行,而你開發的Web+EJB應用則只可以在JBoss服務器上運行,商業產品Websphere/Weblogic等和JBoss屬于同一種性質。
J2EE容器也稱為J2EE服務器,大部分時它們概念是一致的。
http://www.douzhe.com/jerry/archive/archive1_cn.htm
容器:充當中間件的角色
WEB容器:給處于其中的應用程序組件(JSP,SERVLET)提供一個環境,使JSP,SERVLET直接更容器中的環境變量接口交互,不必關注其它系統問題。主要有WEB服務器來實現。例如:TOMCAT,WEBLOGIC,WEBSPHERE等。該容器提供的接口嚴格遵守J2EE規范中的WEB APPLICATION 標準。我們把遵守以上標準的WEB服務器就叫做J2EE中的WEB容器。
EJB容器:Enterprise Java bean 容器。更具有行業領域特色。他提供給運行在其中的組件EJB各種管理功能。只要滿足J2EE規范的EJB放入該容器,馬上就會被容器進行高效率的管理。并且可以通過現成的接口來獲得系統級別的服務。例如郵件服務、事務管理。
WEB容器和EJB容器在原理上是大體相同的,更多的區別是被隔離的外界環境。WEB容器更多的是跟基于HTTP的請求打交道。而EJB容器不是。它是更多的跟數據庫、其它服務打交道。但他們都是把與外界的交互實現從而減輕應用程序的負擔。例如SERVLET不用關心HTTP的細節,直接引用環境變量session,request,response就行、EJB不用關心數據庫連接速度、各種事務控制,直接由容器來完成。
RMI/IIOP:遠程方法調用/internet對象請求中介協議,他們主要用于通過遠程調用服務。例如,遠程有一臺計算機上運行一個程序,它提供股票分析服務,我們可以在本地計算機上實現對其直接調用。當然這是要通過一定的規范才能在異構的系統之間進行通信。RMI是Java特有的。
JNDI:Java命名目錄服務。主要提供的功能是:提供一個目錄系統,讓其它各地的應用程序在其上面留下自己的索引,從而滿足快速查找和定位分布式應用程序的功能。
JMS:Java消息服務。主要實現各個應用程序之間的通訊。包括點對點和廣播。
JavaMAIL:Java郵件服務。提供郵件的存儲、傳輸功能。他是Java編程中實現郵件功能的核心。相當MS中的EXCHANGE開發包。
JTA:Java事務服務。提供各種分布式事務服務。應用程序只需調用其提供的接口即可。
JAF:Java安全認證框架。提供一些安全控制方面的框架。讓開發者通過各種部署和自定義實現自己的個性安全控制策略。
EAI:企業應用集成。是一種概念,從而牽涉到好多技術。J2EE技術是一種很好的集成實現。
EJB容器
EJB容器用來容納業務邏輯,并為業務邏輯截取請求。EJB容器支持EJB訪問JMS、JAAS、JTA、JavaMail、JAXP、JDBC和連接器(Connector)。
Web容器
Web容器截取通過HTTP、FTP、SMTP或其他協議發送的請求。Web應用容器為Servlet和JSP頁面提供的資源與EJB容器提供的資源相同。
應用客戶端容器
客戶端應用是獨立的Java應用,它們在遠程的獨立JVM上運行(與Web容器和EJB容器所運行的JVM不同)。應用客戶端容器為這些應用截取請求。
運行在應用客戶端容器上的程序非常類似于帶有main()方法的Java程序,不過,程序不再由JVM控制,而是由一個容器(也就是應用客戶端容器)控制。
在應用客戶端容器內運行的程序能夠訪問遠程應用服務器上的JAXP、JDBC、JMS和JAAS資源。
Applet容器
Applet容器是一個特殊的容器,它為在瀏覽器內運行的Java程序截取請求。Applet容器不提供任何對其他資源(比如JDBC或JMS)的訪問。在Applet容器內運行的Applet必須自己直接向應用服務器請求資源(而不是把請求發送給容器,然后由容器發送請求給應用服務器)。
對于Applet如何與EJB容器進行通信,EJB規范沒有作出任何規定,但J2EE規范有這方面的規定。對于那些想要直接使用EJB的Applet,J2EE規范要求它們使用HTTP隧道。許多應用服務器提供某種形式的HTTP隧道,支持Applet直接使用EJB。
posted on 2006-10-18 10:05
Lizzie 閱讀(330)
評論(0) 編輯 收藏 所屬分類:
專業-Java