日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Tomcat的类加载器

發布時間:2023/12/18 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Tomcat的类加载器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

看完了Java類裝載器,我們再來看看應用服務器(Tomcat)對類加載器的使用,每個應用服務器都有一套自己的類加載器體系,從而與Java的類加載器區別開以達到自己與應用程序隔離的目的.Tomcat的類加載器體系為:Bootstrap--->System--->Common---->Catalina,SharedShared------>Webapp1,Webapp2 .....

下面是對每個類加載器的定義:

1.Bootstrap 加載器在這里是Java里的Bootstrap和ExtClassLoader的總稱,負責加載Java核心包的類, 和<Java_Home>/jre/lib/ext目錄下的類.通常我們開發人員并不關心.我想只要是java程序這些肯定是必要的

2.System 就是系統加載器,一般是AppClassLoader,負責加載ClassPath環境變量設置目錄下的值,這個我們開發人員會非常關注,但是在 Tomcat里面,雖然用AppClassLoader類加載器,但我們設置的ClassPath對它沒有影響(如果有影響,那就麻煩了,將會導致 Tomcat運行不穩定),為什么呢,因為tomcat每次啟動的時候都會在命令行窗口中都會重新設置Classpath值 為:<catalina_Home>/bin/bootstrap.jar和<java_Home>/lib /tools.jar,所以這里面的類一般對應用程序不可見的.除非你設置了

3.Common類加載器負責加載TomcatHOME/common/class下的.Class文件和common/lib中的jar包,這些類可以被Tomcat內核和每個Web應用程序都可以看見,一般放公用的一些重要的類,如servlet.jar等

4.Catalina類加載器從server/classes和server/lib下加載類,Catalina加載的類只對Tomcat服務器內核可見,對Web應用程序不可見,對于運行Tomcat內核的線程,它的上下文類加載器就是Catalina類加載器

5.Shared類加載器負責從share/classes和share/lib中加載類,它加載的類只對所有Web應用程序有效,對Tomcat不可見.

6.WebappX類加載器負責加載Web應用程序的/web-INF/classes和lib目錄下的類,只對當前Web應用程序有效,對其他Web應用程序無效,對于運行每個Web應用程序的線程,他們的上下文類加載器就是它們各自的WebappX類加載器總結:從以上6點可以看出Tomcat提供了完整的類加載器體系,并且分工非常的明確,因而非常訪問我們進行Web應用程序的設置和部署.

轉載于:https://www.cnblogs.com/kabi/p/5199021.html

總結

以上是生活随笔為你收集整理的Tomcat的类加载器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。