锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲av日韩av永久无码电影,亚洲国产精品无码av,国产午夜亚洲精品国产成人小说http://m.tkk7.com/shiliqiang/category/40577.htmlI'm on my way!zh-cnThu, 30 Jul 2009 01:07:54 GMTThu, 30 Jul 2009 01:07:54 GMT60tomcat 鐮旂┒http://m.tkk7.com/shiliqiang/articles/288965.html鐭沖ご@鐭沖ご@Wed, 29 Jul 2009 14:02:00 GMThttp://m.tkk7.com/shiliqiang/articles/288965.htmlhttp://m.tkk7.com/shiliqiang/comments/288965.htmlhttp://m.tkk7.com/shiliqiang/articles/288965.html#Feedback0http://m.tkk7.com/shiliqiang/comments/commentRss/288965.htmlhttp://m.tkk7.com/shiliqiang/services/trackbacks/288965.html

鐭沖ご@ 2009-07-29 22:02 鍙戣〃璇勮
]]>
鍚姩鏈熼棿鐨勫姞杞界被鐨勯『搴忓拰榪囩▼http://m.tkk7.com/shiliqiang/articles/284998.html鐭沖ご@鐭沖ご@Wed, 01 Jul 2009 10:44:00 GMThttp://m.tkk7.com/shiliqiang/articles/284998.htmlhttp://m.tkk7.com/shiliqiang/comments/284998.htmlhttp://m.tkk7.com/shiliqiang/articles/284998.html#Feedback1http://m.tkk7.com/shiliqiang/comments/commentRss/284998.htmlhttp://m.tkk7.com/shiliqiang/services/trackbacks/284998.htmlTomcat鍚姩鏃禼lassloader鍔犺澆欏哄簭
Tomcat鐨刢lass鍔犺澆鐨勪紭鍏堥『搴忎竴瑙?nbsp; 
1.鏈鍏堟槸$JAVA_HOME/jre/lib/ext/涓嬬殑jar鏂囦歡銆?nbsp; 
2.鐜鍙橀噺CLASSPATH涓殑jar鍜宑lass鏂囦歡銆?nbsp; 
3.$CATALINA_HOME/common/classes涓嬬殑class鏂囦歡銆?nbsp; 
4.$CATALINA_HOME/commons/endorsed涓嬬殑jar鏂囦歡銆?nbsp; 
5.$CATALINA_HOME/commons/i18n涓嬬殑jar鏂囦歡銆?nbsp; 
6.$CATALINA_HOME/common/lib   涓嬬殑jar鏂囦歡銆?nbsp; 
錛圝DBC椹卞姩涔嬬被鐨刯ar鏂囦歡鍙互鏀懼湪榪欓噷錛岃繖鏍峰氨鍙互閬垮厤鍦╯erver.xml閰嶇疆濂芥暟鎹簮鍗村嚭鐜版壘涓嶅埌JDBC   Driver鐨勬儏鍐點傦級  
7.$CATALINA_HOME/server/classes涓嬬殑class鏂囦歡銆?nbsp; 
8.$CATALINA_HOME/server/lib/涓嬬殑jar鏂囦歡銆?nbsp; 
9.$CATALINA_BASE/shared/classes   涓嬬殑class鏂囦歡銆?nbsp; 
10.$CATALINA_BASE/shared/lib涓嬬殑jar鏂囦歡銆?nbsp; 
11.鍚勮嚜鍏蜂綋鐨剋ebapp   /WEB-INF/classes涓嬬殑class鏂囦歡銆?nbsp; 
12.鍚勮嚜鍏蜂綋鐨剋ebapp   /WEB-INF/lib涓嬬殑jar鏂囦歡銆?nbsp; 
class鐨勬悳瀵婚『搴忓涓嬶細  
-------------  
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/common/classes    
$CATALINA_HOME/common/endorsed/*.jar    
$CATALINA_HOME/common/i18n/*.jar    
$CATALINA_HOME/common/lib/*.jar    
$CATALINA_BASE/shared/classes    
$CATALINA_BASE/shared/lib/*.jar    
--------------  
鍥犳鏀懼湪涓嶅悓webapp閲岀殑class鏂囦歡錛屼細琚玞lassloader鍔犺澆鎴愪笉鍚岀殑瀹炰緥銆?nbsp; 
渚嬪鍋囪涓嬮潰涓や釜涓嶅悓鍐呭鐨刢lass銆傚垎鍒斁鍦ㄤ笉鍚岀殑webapp鐨刢lass鐩綍涓嬨?nbsp; 
package   com.lizongbo;  
public   class   TestClass   {  
      private   String   NAME="lizongbo";  
}  
package   com.lizongbo;  
public   class   TestClass   {  
      private   String   NAME="li_zongbo";  
}  
鍦ㄤ笉鍚岀殑webapp寰楀埌鐨刢om.lizongbo.NAME緇撴灉鏄笉鍚岀殑錛屼笖浜掍笉褰卞搷銆?nbsp; 
浣嗘槸娉ㄦ剰錛屼互涓嬪寘鍚嶅紑澶寸殑class渚嬪錛?nbsp; 
javax.*    
org.xml.sax.*    
org.w3c.dom.*    
org.apache.xerces.*    
org.apache.xalan.*    
ps,娉ㄦ剰.鍦ㄥ悇涓猨ar涓殑\META-INF\MAINFEST.MF鏂囦歡閲孋lass-Path閿煎錛屼篃浼氭彁渚沯ar鐨勫姞杞戒紭鍏堥『搴忋?nbsp; 
渚嬪鏌恓ar鐨凪AINFEST.MF鍐呭濡備笅錛?nbsp; 
Manifest-Version:   1.0  
Created-By:   lizongbo  
Class-Path:   commons-beanutils.jar  
Class-Path:   commons-collections.jar  
Class-Path:   commons-dbcp.jar  
Class-Path:   commons-digester.jar  
Class-Path:   commons-logging.jar  
Class-Path:   commons-pool.jar  
Class-Path:   commons-services.jar  
Class-Path:   commons-validator.jar  
Class-Path:   jakarta-oro.jar  
Main-Class:   com.lizongbo.MyTestClass  
閭d箞鍦ㄥ姞杞借繖涓猨ar鐨勬椂鍊欙紝浼氬厛鍦ㄦjar鎵鍦ㄧ洰褰曚笅渚濇鍏堝姞杞絚ommons-beanutils.jar錛宑ommons-collections.jar銆傘傘傜瓑jar鏂囦歡銆?nbsp; 
鍦ㄤ笉鍚岀殑鍦版柟鏀劇疆jar鍜宑lass鍙兘浼氫駭鐢熸剰鎯充笉鍒扮殑鍚庢灉,錛屽挨鍏舵槸涓嶅悓鐗堟湰鐨刯ar鏂囦歡錛屽洜姝ゅ湪瀹為檯搴旂敤閮ㄧ講web搴旂敤鏃跺欒鐗瑰埆鐣欏績.  
渚嬪   浣跨敤javamail甯歌鐨勪竴涓嚭閿欎俊鎭?  
javax.mail.NoSuchProviderException:   No   provider   for   smtp  
鍏剁湡瀹炲師鍥犲氨寰堝彲鑳藉涓?  
鍦ㄤ笉鍚岀殑鍔犺澆jar鐨勭洰褰曚笅鏀劇疆浜嗕笉鍚岀増鏈殑mail.jar,姣斿涓涓槸javamail1.3.1鐨刴ail.jar  
鍦―:\jakarta-tomcat-5.5.8\common\lib涓?鑰屽彟澶栦竴涓槸javamail1.3.2鐨刴ail.jar鍦?nbsp; 
D:\jakarta-tomcat-5.5.8\webapps\lizongbo\WEB-INF/lib涓?  
閭d箞lizongbo榪欎釜webapp涓嬌鐢ㄥ埌javamail榪涜閭歡鍙戦佺殑鏃跺欙紝渚夸細鍑虹幇No   provider   for   smtp鐨勯敊璇?nbsp; 
*******************************************************************
ClassLoader in Tomcat
************************************
1 - Tomcat 鐨勭被杞藉叆鍣ㄧ殑緇撴瀯


Tomcat Server 鍦ㄥ惎鍔ㄧ殑鏃跺欏皢鏋勯犱竴涓狢lassLoader鏍戯紝浠ヤ繚璇佹ā鍧楃殑綾誨簱鏄鏈夌殑
Tomcat Server鐨凜lassLoader緇撴瀯濡備笅錛?


        +-----------------------------+

        |         Bootstrap           |

        |             |               |

        |          System             |

        |             |               |

        |          Common             |

        |         /      \            |

        |     Catalina Shared        |

        |               /    \        |

         |          WebApp1 WebApp2   |

        +-----------------------------+


鍏朵腑錛?
- Bootstrap - 杞藉叆JVM鑷甫鐨勭被鍜?JAVA_HOME/jre/lib/ext/*.jar
- System - 杞藉叆$CLASSPATH/*.class
- Common - 杞藉叆$CATALINA_HOME/common/...錛屽畠浠TOMCAT鍜屾墍鏈夌殑WEB APP閮藉彲瑙?
- Catalina - 杞藉叆$CATALINA_HOME/server/...錛屽畠浠粎瀵筎OMCAT鍙錛屽鎵鏈夌殑WEB APP閮戒笉鍙
- Shared - 杞藉叆$CATALINA_HOME/shared/...錛屽畠浠粎瀵規墍鏈塛EB APP鍙錛屽TOMCAT涓嶅彲瑙侊紙涔熶笉蹇呰錛?
- WebApp - 杞藉叆ContextBase?/WEB-INF/...錛屽畠浠粎瀵硅WEB APP鍙



2 - ClassLoader 鐨勫伐浣滃師鐞?


姣忎釜榪愯涓殑綰跨▼閮芥湁涓涓垚鍛榗ontextClassLoader錛岀敤鏉ュ湪榪愯鏃跺姩鎬佸湴杞藉叆鍏跺畠綾?
緋葷粺榛樿鐨刢ontextClassLoader鏄痵ystemClassLoader錛屾墍浠ヤ竴鑸岃█java紼嬪簭鍦ㄦ墽琛屾椂鍙互浣跨敤JVM鑷甫鐨勭被銆?JAVA_HOME/jre/lib/ext/涓殑綾誨拰$CLASSPATH/涓殑綾?
鍙互浣跨敤 Thread.currentThread().setContextClassLoader(...); 鏇存敼褰撳墠綰跨▼鐨刢ontextClassLoader錛屾潵鏀瑰彉鍏惰澆鍏ョ被鐨勮涓?


ClassLoader 琚粍緇囨垚鏍戝艦錛屼竴鑸殑宸ヤ綔鍘熺悊鏄細
1) 綰跨▼闇瑕佺敤鍒版煇涓被錛屼簬鏄痗ontextClassLoader琚姹傛潵杞藉叆璇ョ被
2) contextClassLoader璇鋒眰瀹冪殑鐖禖lassLoader鏉ュ畬鎴愯杞藉叆璇鋒眰
3) 濡傛灉鐖禖lassLoader鏃犳硶杞藉叆綾伙紝鍒檆ontextClassLoader璇曞浘鑷繁鏉ヨ澆鍏?


娉ㄦ剰 錛歐ebApp?ClassLoader鐨勫伐浣滃師鐞嗗拰涓婅堪鏈夊皯璁鎬笉鍚岋細
瀹冨厛璇曞浘鑷繁杞藉叆綾伙紙鍦–ontextBase?/WEB-INF/...涓澆鍏ョ被錛夛紝濡傛灉鏃犳硶杞藉叆錛屽啀璇鋒眰鐖禖lassLoader瀹屾垚


鐢辨鍙緱錛?
- 瀵逛簬WEB APP綰跨▼錛屽畠鐨刢ontextClassLoader鏄疻ebApp?ClassLoader
- 瀵逛簬Tomcat Server綰跨▼錛屽畠鐨刢ontextClassLoader鏄疌atalinaClassLoader



3 綾葷殑鏌ユ壘

ClassLoader綾諱腑loadClass鏂規硶涓虹己鐪佸疄鐜幫紝鐢ㄤ笅闈㈢殑欏哄簭鏌ユ壘綾伙細

1銆佽皟鐢╢indLoadedClass鏂規硶鏉ユ鏌ユ槸鍚﹀凡緇忚鍔犺澆銆傚鏋滄病鏈夊垯緇х畫涓嬮潰鐨勬楠ゃ?

2銆佸鏋滃綋鍓嶇被瑁呰澆鍣ㄦ湁涓涓寚瀹氱殑濮旀墭鐖惰杞藉櫒錛屽垯鐢ㄥ鎵樼埗瑁呰澆鍣ㄧ殑loadClass鏂規硶鍔犺澆綾伙紝涔熷氨鏄鎵樼粰鐖惰杞藉櫒鍔犺澆鐩稿簲鐨勭被銆?

3銆佸鏋滆繖涓被瑁呰澆鍣ㄧ殑濮旀墭灞傜駭浣撶郴娌℃湁涓涓被瑁呰澆鍣ㄥ姞杞借綾伙紝鍒欎嬌鐢ㄧ被瑁呰澆鍣ㄥ畾浣嶇被鐨勭壒瀹氬疄鐜版満鍒訛紝璋冪敤findClass鏂規硶鏉ユ煡鎵劇被銆?



4 - 閮ㄥ垎鍘熶唬鐮佸垎鏋?


4.1 - org/apache/catalina/startup/Bootstrap.java

Bootstrap涓畾涔変簡涓変釜classloader:commonLoader,catalinaLoader,sharedLoader.涓夎呭叧緋誨涓嬶細


// 娉ㄦ剰涓変釜鑷繁瀹氱疆鐨凜lassLoader鐨勫眰嬈″叧緋伙細

            // systemClassLoader (root)

              //   +--- commonLoader

            //          +--- catalinaLoader

            //          +--- sharedLoader


Tomcat Server 綰跨▼鐨勮搗鐐?
鏋勯燙lassLoader鏍戯紝閫氳繃Thread.currentThread().setContextClassLoader(catalinaLoader)璁劇疆褰撳墠鐨刢lassloader涓篶atalinaLoader銆?
杞藉叆鑻ュ共綾伙紝鐒跺悗杞叆org.apache.catalina.startup.Catalina綾諱腑



4.2 org.apache.catalina.loader.StandardClassLoader.java

閫氳繃鐪媗oadClass榪欎釜鏂規硶鏉ョ湅tomcat鏄浣曞姞杞界被鐨勶紝欏哄簭濡備笅錛?

(0) Check our previously loaded class cache鏌ユ壘宸茬粡瑁呰澆鐨刢lass
        clazz = findLoadedClass(name);

(1) If a system class, use system class loader閫氳繃緋葷粺classloader鏉ヨ杞絚lass

        ClassLoader loader = system;
            clazz = loader.loadClass(name);

(2) Delegate to our parent if requested濡傛灉鏈変唬鐞嗗垯浣跨敤鐖剁被classloader

            ClassLoader loader = parent;
            if (loader == null)
                loader = system;
            clazz = loader.loadClass(name);

(3) Search local repositories 鏌ユ壘鏈湴綾繪睜錛屾瘮濡?CATALINA_HOME/server

           clazz = findClass(name);

(4) Delegate to parent unconditionally 榛樿浣跨敤浠g悊瑁呰澆鍣?



[ 鏌ョ湅浠g爜]


4.3 - org/apache/catalina/startup/ClassLoaderFactory.java


鏍規嵁璁劇疆鍒涘緩騫惰繑鍥濻tandardClassLoader鐨勫疄渚?


[ 鏌ョ湅浠g爜]


4.4 - org/apache/catalina/loader/StandardClassLoader.java


綾昏澆鍏ュ櫒


4.5 - org/apache/catalina/startup/SecurityClassLoad.java


璇ョ被浠呭寘鍚竴涓潤鎬佹柟娉曪紝鐢ㄦ潵涓篶atalinaLoader杞藉叆涓浜涚被


[ 鏌ョ湅浠g爜]


Appendix - 鍙傝?


[1] http://jakarta.apache.org/tomcat/ 涓殑Tomcat 4.1.x鏂囨。Class Loader HOW-TO


鍦ㄤ竴涓?JVM 涓彲鑳藉瓨鍦ㄥ涓?ClassLoader 錛屾瘡涓?ClassLoader 鎷ユ湁鑷繁鐨?NameSpace 銆備竴涓? ClassLoader 鍙兘鎷ユ湁涓涓?class 瀵硅薄綾誨瀷鐨勫疄渚嬶紝浣嗘槸涓嶅悓鐨?ClassLoader 鍙兘鎷ユ湁鐩稿悓鐨?class 瀵硅薄瀹炰緥錛岃繖鏃跺彲鑳戒駭鐢熻嚧鍛界殑闂銆傚 ClassLoaderA 錛岃杞戒簡綾?A 鐨勭被鍨嬪疄渚?A1 錛岃?ClassLoaderB 錛屼篃瑁呰澆浜嗙被 A 鐨勫璞″疄渚?A2 銆傞昏緫涓婅 A1=A2 錛屼絾鏄敱浜?A1 鍜?A2 鏉ヨ嚜浜庝笉鍚岀殑 ClassLoader 錛屽畠浠疄闄呬笂鏄畬鍏ㄤ笉鍚岀殑錛屽鏋? A 涓畾涔変簡涓涓潤鎬佸彉閲?c 錛屽垯 c 鍦ㄤ笉鍚岀殑 ClassLoader 涓殑鍊兼槸涓嶅悓鐨勩?/font>

鐭沖ご@ 2009-07-01 18:44 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 亚洲毛片网址在线观看中文字幕| 在线看片人成视频免费无遮挡| 亚洲国产精品碰碰| 精品一区二区三区无码免费直播| 免费看片A级毛片免费看| 亚洲色成人网站WWW永久四虎| 1000部拍拍拍18免费网站| 亚洲欧洲在线播放| 青娱乐免费视频在线观看| 91亚洲性爱在线视频| 最近高清国语中文在线观看免费| 亚洲日韩久久综合中文字幕| 日本媚薬痉挛在线观看免费| 猫咪免费人成网站在线观看入口| 亚洲熟伦熟女新五十路熟妇| 女同免费毛片在线播放| 亚洲高清不卡视频| 成人免费视频软件网站| 日韩大片免费观看视频播放| 亚洲精品无码久久一线| 最近免费中文字幕大全免费| 亚洲人成黄网在线观看 | 国产成人精品免费视频网页大全| 亚洲国产成人手机在线电影bd| 四虎免费大片aⅴ入口| 男性gay黄免费网站| 久久香蕉国产线看观看亚洲片| 亚洲黄色免费电影| 亚洲AV成人精品日韩一区| 久久亚洲高清综合| 久久免费看黄a级毛片| 特级aa**毛片免费观看| 亚洲av永久无码精品漫画 | 亚洲Av无码乱码在线观看性色 | 亚洲午夜福利精品久久| 无码一区二区三区免费| 亚洲AV无码一区二区三区网址| 久久精品亚洲福利| 免费人成在线视频| GOGOGO高清免费看韩国| 久久精品国产亚洲av麻豆图片|