阅读量:1
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实现了类加载的隔离和管理。