fkjava

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            49 Posts :: 0 Stories :: 0 Comments :: 0 Trackbacks

             tomcat服務器是一種Servlet/jsp容器,更實質性的說是Servlet容器,因為jsp最終還是被編譯成servlet來執行的。而對于servlet來說,其最長見的用途是擴展java web服務器功能,為來自web客戶的請求提供服務。它完全運行在java虛擬機上。由于它的運行在服務器端,因此他的運行不依賴于瀏覽器。

             

                  tomcat作為servlet容器,負責處理客戶請求,把請求傳給servlet并把結果返回給客戶。servlet容器與servlet之間的接口是由java servlet api定義的,在此api中定義了servlet的各種方法,這些方法在servlet生命周期的不容階段被servlet容器調用,servlet api還定義了servlet容器傳遞給servlet的對象類,如請求對象ServletRequest和相應對象ServletResponse

             

                 tomcat服務器是由一系列可配置的組件構成,其中核心組件是Catalina Servlet容器,它是所有其他tomcat組件的頂層容器。tomcat的組件可以在conf/server.xml文件當中進行配置,每個tomcat組件在server.xml文件中進行配置,每個tomcat組件在server.xml文件中對應一種配置元素。具體見下:

             

              < server>

             

              < service>

             

              < Connector>

             

              < /Connector>

             

              < Engine>

             

              < Host>

             

              < Context>< /Context>

             

              < /Host>

             

              < /Engine>

             

              < /service>

             

              < /server>

             

              1.頂層類元素:

             

              < Server>< Service>,他們位于整個配置文件的頂層

             

              < Server>元素代表整個Catalina Servlet容器,它是tomcat實例的頂層元素。< Server>元素當中可包含一個或多個< service>元素。

             

              < service>元素中包含一個< Engine>元素,以及一個或多個< Connector>元素,這些< Connector>元素共享同一個< Engine>元素

             

              2.連接器類元素:

             

              connector,它代表了介于客戶與服務器之間的通信接口,負責將客戶的請求發送給服務器,并將服務器的相應結果傳遞給客戶。

             

              3.容器類元素

             

              < Engine>,< Host>< context

             

              其中< Engine>組件處理在同一個< service>中所有< Connector>元素接受到的客戶請求

             

              < Host>組件為特定的虛擬機處理所有客戶請求。每個< Host>元素定義了一個虛擬主機,它可以包含一個或多個web應用。

             

              < context>組件為特定的web應用處理所有客戶請求。它是使用最頻繁的元素。每個< Context>元素代表了運行在虛擬機上的單個web應用,一個< Host>元素中可以包含多個< context>元素

             

                  說到< context>元素,java web應用的主要特征之一就是它與Context的關系,每個web應用有唯一的Context.java web應用運行時,Servlet容器為每個web應用創建唯一的ServletContext對象,它被整個web應用中所有的組件共享。

             

              如下代碼:

             

              < Context path=“/reglog” docBase=“reglog” debug=“0”

             

              crosscontext=“true” reloadable=“true”>

             

              < /Context>

             

              你可以自己在server.xml當中定義一個context元素,設定你所存在項目的參數及屬性。其中path指定訪問web應用的url入口

             

              docBase指定web應用的文件路徑,可以給定絕對路徑,也可以給定向對于hostappBase屬性的相對路徑

             

              reloadable,如果這個屬性設為true,tomcat服務器在運行狀態下會監視在WEB-INF/classesWEB-INF/lib目錄下class文件的改動,如果監測到有class文件被更新,服務器會自動重新加載web應用。

             

              另外說一下tomcat的運行腳本

             

                  如果仔細研究一下tomcat的啟動和關閉腳本,會發現startup.batshutdown.bat都執行同一個目錄下的catalina.bat腳本。其實質是這樣的:執行startup.bat腳本,相當于執行了catalina start命令,執行shutdown.bat相當于執行了catalina stop命令。

             

              commonlib,serverlib,sharedlib這三個目錄相信大家都見過吧,但具體是干什么用的呢?

             

              其中serverlib下的jar文件只能被tomcat服務器訪問。

             

              sharedlib下的jar文件可以被所有的web應用訪問,但不能被tomcat服務器訪問。

             

              commonlib目錄下的jar文件可以被tomcat服務器和所有的web應用訪問

           

          您正在看的文章來自瘋狂軟件教育中心 www.fkjava.org

          信息咨詢:Q564205990            星老師

          posted on 2012-08-18 14:51 瘋狂軟件 閱讀(293) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 临朐县| 肇庆市| 柞水县| 克什克腾旗| 安图县| 马尔康县| 长丰县| 西宁市| 化州市| 琼结县| 云安县| 广宁县| 红河县| 福贡县| 定兴县| 车致| 宽甸| 荃湾区| 阿瓦提县| 黄石市| 怀远县| 拜城县| 澄迈县| 杭锦旗| 静宁县| 即墨市| 灌云县| 兴义市| 龙南县| 雷山县| 绥芬河市| 沙湾县| 八宿县| 朝阳县| 江油市| 班玛县| 延庆县| 宁晋县| 漾濞| 沧源| 孙吴县|