初始化的时候,SecurityClassLoad类的静态方法,sercurityClassLoad方法会被调用, 加载进一些满足安全规则的类:
- public static void securityClassLoad(ClassLoader loader) throws Exception {
- if (System.getSecurityManager() == null) {
- return;
- }
- //
- loadCorePackage(loader);
- loadLoaderPackage(loader);
- loadSessionPackage(loader);
- loadUtilPackage(loader);
- loadJavaxPackage(loader);
- loadCoyotePackage(loader);
- loadHttp11Package(loader);
- loadTomcatPackage(loader);
- }

那每个方法中,都会加载哪些类呢?
首先是加载核心的一些类,包括有:

再是加载web应用的资源加载类:

之后是关于Session的一些类:

再就是tomcat内部的一些工具类:

然后将Cookie相关的类加载进来:

接着要加载入连接器的相关类:

加载HTTP1.1协议的处理类:

最后是tomcat中用于处理SSL的类:

- //java中类$后面跟数字是匿名类编译出来的
- //java中类$后面加字母是内部类编译出来的
本文介绍了Tomcat在启动过程中如何通过SecurityClassLoad类的静态方法securityClassLoad加载符合安全规则的关键类。这些类涵盖了核心包、加载器包、会话管理包等关键组件。
1724

被折叠的 条评论
为什么被折叠?



