Tomcat中的Class Loader負責加載和管理Web應用程序中的類。Tomcat使用了一個層次結構的ClassLoader,這個結構包括了多個ClassLoader實例,每個ClassLoader負責加載不同的類。
當一個Web應用程序被部署到Tomcat中時,Tomcat會為該應用程序創建一個Web應用程序級別的ClassLoader。這個ClassLoader會加載應用程序中的類文件,包括Servlet類、Filter類等。
在Tomcat中,類加載器之間是通過委托機制來協作的。當一個類需要被加載時,Tomcat首先會嘗試由應用程序級別的ClassLoader加載這個類。如果應用程序級別的ClassLoader無法找到這個類,Tomcat會逐級委托給父級ClassLoader進行加載,直到最終被系統級別的ClassLoader加載。
這種委托機制確保了不同Web應用程序之間的類文件不會相互干擾,也確保了系統中共享的類只會被加載一次。通過這種方式,Tomcat實現了類加載的隔離和管理。