tomcat应用加载顺序详解

 时间:2024-10-13 23:20:20

1、分析catalina.jar源码,在其中加入一些日志信息

tomcat应用加载顺序详解
tomcat应用加载顺序详解

2、启动tomcat,查看相关信息

tomcat应用加载顺序详解
tomcat应用加载顺序详解
tomcat应用加载顺序详解

3、根据日志,经过分析,我们可以看出,tomcat会先去读server.xml下配置的context标签的项目,之后会去加载conf/Catalina/localhost下面的.xml里面配置的项目,之后会去读取server.xml下<Host appBase="webapps"/>配置的appBase下的项目

tomcat应用加载顺序详解
tomcat应用加载顺序详解
tomcat应用加载顺序详解

4、好了,我们大概的了解了启动过旯皱镢涛程,我们再去分析源码吧,首先是server.xml下context标签项目的启动过程:读取docbase和path,如果path为/,/ROOT,那么bas髫潋啜缅eName就是ROOT,否则就为它本身

tomcat应用加载顺序详解
tomcat应用加载顺序详解

5、之后分析docBace对应的文件:docBase是war腻戴怯猡包,就解压到刚刚的baseName下面。如果docBase是文件夹,什么都不做。如果docBase文件夹不存在,再去蚕蝣鲢蹙目录下查找docBase(文件目录)对应的war包存在不存在,如果存在解压war包到baseName(url路径,ROOT就是域名根目录)

tomcat应用加载顺序详解

6、之后就会去加载该项目

tomcat应用加载顺序详解

7、context加载完成之后,会去加载conf/Catalina/localhost配置的项目,之后会去加载appBase下的war包项目,最后加载appBase目录下的文件夹项目

tomcat应用加载顺序详解

8、总结加载项目步骤:先是server.xml的context项目;之后是conf/Catalina/localhost的context项目,然后是appBase的war包项目,最后是appBase目录下的文件夹项目

  • 黑暗之魂2任务“树精”过关攻略
  • 暗黑2第三场景小矮人总是打不完怎么处理?
  • TIM怎么关闭与我相关通知
  • 藏宝海湾钓鱼大赛
  • 樱花之恋的做法
  • 热门搜索
    安全与健康手抄报内容 三年级安全手抄报 古诗手抄报内容 运动与健康手抄报 读书手抄报的资料 关于的手抄报图片 禁燃烟花爆竹手抄报 小学三年级手抄报大全 汉字王国手抄报 传染病手抄报内容