明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

Tomcat 4中的ClassLoader

[摘要]Tomcat 4中的ClassLoadersonymusic.(譯的比較差啦,大家隨便看看吧。為了讓英文好的同志直接查看,有不少是中英文都在一起的。如果有錯(cuò),請(qǐng)指出來(lái)。謝謝!)For classes and resources specific to a particular web applic...
Tomcat 4中的ClassLoader
sonymusic.
(譯的比較差啦,大家隨便看看吧。為了讓英文好的同志直接查看,有不少是中英文都在一起的。如果有錯(cuò),請(qǐng)指出來(lái)。謝謝!)


For classes and resources specific to a particular web application, place unpacked classes and resources under /WEB-INF/classe of your web application archive, or place JAR files containing those classes and resources under /WEB-INF/lib of your web application archive.
如果只準(zhǔn)備給某一個(gè)應(yīng)用使用,就放到該應(yīng)用的/web-inf/classes目錄下,如果是jar,zip文件 的話,就放到/web-inf/lib目錄下。

For classes and resources that must be shared across all web applications, place unpacked classes and resources under $CATALINA_HOME/classes, or place JAR files containing those classes and resources under $CATALINA_HOME/lib.
如果是準(zhǔn)備給所有的web應(yīng)用使用的話,就解到$Catalina_home/classes目錄下,如果是jar,zip文件的話,就直接放到$Catalina_home/lib目錄下。


ClassLoader的順序:
如圖:

Bootstrap



 System



 Common

/\

Catalina Shared

 / \

Webapp1Webapp2 ...

/ /

 Jasper1Jasper2 ...

說(shuō)明:
Bootstrap -
包含了JVM中的基本的類,$Java_home/jre/lib/ext/目錄下的jar文件也算。當(dāng)然有一些JVM做法不一樣。

System - 系統(tǒng)環(huán)境變量中的Classpath

Common - 包括 $CATALINA_HOME/common/classes(解開后的文件), $CATALINA_HOME/common/lib(jar文件),請(qǐng)不要將web application所專用的文件放到這里來(lái)。

Catalina - 包括$CATALINA_HOME/server/classes,$CATALINA_HOME/server/lib(注意這里的Class是不能夠被web應(yīng)用訪問的。這只是為了實(shí)現(xiàn)tomcat而需要的。)

Shared - 包括$CATALINA_HOME/classes, $CATALINA_HOME/lib

WebappX - 包括特定web應(yīng)用目錄下的 /WEB-INF/classes 和 /WEB-INF/lib (只能被該web應(yīng)用所使用)

JasperX - 如果你的web應(yīng)用使用了JSP,tomcat也為其創(chuàng)建了一個(gè)classloader,包括jsp編譯器及需要的類。因?yàn)檫@個(gè)classloader是上一個(gè)classloader的child,所以在JSP編譯器和編譯過(guò)后的jsp文件中可以看到上面所有的class path。


注1:以上除特別說(shuō)明,都表示可以被所有的web應(yīng)用使用。
注2:一般來(lái)說(shuō)會(huì)將解開來(lái)的class文件放到classes目錄下,將jar,zip文件放到lib目錄下。


標(biāo)簽:Tomcat 4中的ClassLoader