Tomcat start方法窥探

依然范特西╮ 提交于 2019-12-07 23:35:26

start方法会先判断其所持有的Server引用是否为 null,否则会调用一次load方法,如果还是为null,则会结束应用程序(System.exit(1);)。

调用Server的start方法。

向JVM添加关闭钩子。

 

start @ StandardServer

 调用了Service的init方法。

 

start @ StandardService

调用了Engine、mapperListener和connector的start方法。

 

start @ Engine

异步调用了子容器(在这里是Host的start方法)。

 

start @ StandardHost

如果Host的过滤链里没有org.apache.catalina.valves.ErrorReportValve,则将其添加进去。

异步调用了子容器(在这里是Context的start方法)。

 

start @ StandardContext

 226行代码里做了很多Context配置的工作,启动了Session Manager,启动了Pipeline等。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!