8.tomcat中spring启动流程分析
spring的在tomcat容器中的启动过程应该是:
- tomcat启动–BootStrap.start()–spring jar包里面的Catalina.start()
- startInternal()–找到servlet的子类并初始化。其中包括SpringServletContainerInitializer,调用onStartup方法
- 启动监听器,其中ContextLoaderListener会进行 initWebApplicationContext;初始化或者说刷新ioc容器
- 加载子容器:loadOnStartup(findChildren()),会把DispatcherServlet进行初始化,在这个过程中也会刷新ioc。
- tomcat进行其他的启动配置。