<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 156,  comments - 601,  trackbacks - 0
        Tomcat6 類(lèi)裝載器的實(shí)現(xiàn)都是通過(guò)繼承于JDK中的 java.lang.ClassLoader類(lèi)。
        包括Bootstrap,System,Common和Webapp這四種類(lèi)加載器來(lái)實(shí)現(xiàn)不同目錄的類(lèi)文件裝載。
        示例結(jié)構(gòu)如下:
          Bootstrap
              |
           System
              |
           Common
           /     \
      Webapp1   Webapp2 ...

      Bootstrap 類(lèi)裝載器:
          它用于加載最基本的JVM運(yùn)行環(huán)境類(lèi),裝載JDK目錄下類(lèi)文件($JAVA_HOME/jre/lib/ext)
          使用它的目的是以防一些JVM提供商實(shí)現(xiàn)時(shí),可能考慮某些原因會(huì)把部分的類(lèi)文件通過(guò)不同的多個(gè)類(lèi)加載加器加載,同時(shí)會(huì)
          屏蔽一些類(lèi)加載讓?xiě)?yīng)用層的類(lèi)加載器訪問(wèn)到。
        System 類(lèi)裝載器:
            該類(lèi)裝載器根據(jù)JVM的CLASSPATH參數(shù)設(shè)置裝載類(lèi)文件,該類(lèi)裝載器對(duì)于Tomcat內(nèi)部的程序和應(yīng)用層的程序都是可見(jiàn)的。
            注:目前tomcat5的啟動(dòng)腳本($CATALINA_HOME/bin/catalina.sh 或 %CATALINA_HOME%\bin\catalina.bat),會(huì)把全局環(huán)境變量CLASSPATH忽略。
                而且通過(guò)下面的兩個(gè)類(lèi)庫(kù)來(lái)實(shí)現(xiàn)裝載設(shè)置:
                * $CATALINA_HOME/bin/bootstrap.jar 包含一個(gè)main()方法來(lái)初始化tomcat6服務(wù),并實(shí)例類(lèi)裝器所依賴(lài)的類(lèi)文件。
                * $CATALINA_HOME/bin/tomcat-juli.jar 初始Jakarta commons logging API和 java.util.logging LogManager.
        Common 類(lèi)裝載器
            該類(lèi)裝載器對(duì)于Tomcat內(nèi)部的程序和應(yīng)用層的程序都是可見(jiàn)的.
            當(dāng)然不太建議把應(yīng)用層的類(lèi)庫(kù)放到這里來(lái)加載。
            所有$CATALINA_HOME/lib目錄下未壓縮的類(lèi)文件,資源和壓縮后Jar/zip文件都會(huì)補(bǔ)該類(lèi)裝載器加載。
           
            Tomcat6默認(rèn)該目錄的類(lèi)文件有:
            * annotations-api.jar - JEE annotations classes.
            * catalina.jar - Implementation of the Catalina servlet container portion of Tomcat6.
            * catalina-ant.jar - Tomcat Catalina Ant tasks.
            * catalina-ha.jar - High availability package.
            * catalina-tribes.jar - Group communication package.
            * el-api.jar - EL 2.1 API.
            * jasper.jar - Jasper 2 Compiler and Runtime.
            * jasper-el.jar - Jasper 2 EL implementation.
            * jasper-jdt.jar - Eclipse JDT 3.2 Java compiler.
            * jsp-api.jar - JSP 2.1 API.
            * servlet-api.jar - Servlet 2.5 API.
            * tomcat-coyote.jar - Tomcat connectors and utility classes.
            * tomcat-dbcp.jar - package renamed database connection pool based on Commons DBCP.
            * tomcat-i18n-**.jar - Optional JARs containing resource bundles for other languages. As default bundles are also included in each individual JAR, they can be safely removed if no internationalization of messages is needed.

        Webapp 類(lèi)裝載器:
          應(yīng)用層的類(lèi)裝載器,每個(gè)應(yīng)用程序都會(huì)創(chuàng)建一個(gè)單獨(dú)的類(lèi)裝載器。該類(lèi)裝載器只能本應(yīng)用程序中可見(jiàn)。
          所有/WEB-INF/classes目錄下未壓縮的類(lèi)文件,資源文件都會(huì)補(bǔ)該類(lèi)裝載器加載。
          所有/WEB-INF/lib目錄下壓縮后Jar/zip文件都會(huì)補(bǔ)該類(lèi)裝載器加載。


        把各個(gè)類(lèi)裝載器的定義整理出來(lái)后,Tomcat6服務(wù)器類(lèi)裝載器執(zhí)行的順序如下:
       
        * Bootstrap classes of your JVM
        * System class loader classses (described above)
        * /WEB-INF/classes of your web application
        * /WEB-INF/lib/*.jar of your web application
        * $CATALINA_HOME/lib
        * $CATALINA_HOME/lib/*.jar

    Good Luck!
    Yours Matthew!
    posted on 2008-09-27 19:24 x.matthew 閱讀(2858) 評(píng)論(2)  編輯  收藏 所屬分類(lèi): Application Server
    主站蜘蛛池模板: 亚洲性久久久影院| caoporn国产精品免费| 亚洲日本乱码在线观看| 全免费一级毛片在线播放| 91短视频在线免费观看| 黄色视屏在线免费播放| mm1313亚洲国产精品无码试看 | 亚洲欧洲AV无码专区| 亚洲国产日韩一区高清在线| 国产精品亚洲mnbav网站| 日韩高清免费观看| 一区二区无码免费视频网站| 最好看最新的中文字幕免费| 丁香花在线视频观看免费| 污污污视频在线免费观看| 色九月亚洲综合网| 亚洲国产无线乱码在线观看| 亚洲综合色一区二区三区| 亚洲国产精品成人精品小说| 噜噜噜亚洲色成人网站∨ | 亚洲免费精彩视频在线观看| a成人毛片免费观看| 一级黄色免费大片| 一级美国片免费看| a级毛片免费网站| sss在线观看免费高清| 一级做a爰片性色毛片免费网站| 黄色毛片免费网站| 美女啪啪网站又黄又免费| 国产午夜亚洲精品不卡免下载| 精品国产亚洲一区二区三区在线观看 | 无码不卡亚洲成?人片| 免费国产成人午夜私人影视| 国产精品无码素人福利免费| 国产精品嫩草影院免费| 国产免费人成在线视频| 日韩亚洲精品福利| 伊人久久大香线蕉亚洲| 亚洲AV无码久久精品狠狠爱浪潮| 久久亚洲国产精品五月天| 亚洲欧洲日韩国产综合在线二区|