首先tomcat启动时会通过StandardContext.listenerStart() line: 4853 初始化spring的监听器ContextLoaderListener(ContextLoader).configureAndRefreshWebApplicationContext(ConfigurableWebApplicationContext, ServletContext) line: 444
具体debug的栈信息如下
AppInitializer.setApplicationContext(ApplicationContext) line: 20
ApplicationContextAwareProcessor.invokeAwareInterfaces(Object) line: 121
ApplicationContextAwareProcessor.postProcessBeforeInitialization(Object, String) line: 97
DefaultListableBeanFactory(AbstractAutowireCapableBeanFactory).applyBeanPostProcessorsBeforeInitialization(Object, String) line: 409
DefaultListableBeanFactory(AbstractAutowireCapableBeanFactory).initializeBean(String, Object, RootBeanDefinition) line: 1581
DefaultListableBeanFactory(AbstractAutowireCapableBeanFactory).doCreateBean(String, RootBeanDefinition, Object[]) line: 554
DefaultListableBeanFactory(AbstractAutowireCapableBeanFactory).createBean(String, RootBeanDefinition, Object[]) line: 483
AbstractBeanFactory$1.getObject() line: 306
DefaultListableBeanFactory(DefaultSingletonBeanRegistry).getSingleton(String, ObjectFactory<?>) line: 230
DefaultListableBeanFactory(AbstractBeanFactory).doGetBean(String, Class<T>, Object[], boolean) line: 302
DefaultListableBeanFactory(AbstractBeanFactory).getBean(String) line: 197
DefaultListableBeanFactory.preInstantiateSingletons() line: 759
XmlWebApplicationContext(AbstractApplicationContext).finishBeanFactoryInitialization(ConfigurableListableBeanFactory) line: 866
XmlWebApplicationContext(AbstractApplicationContext).refresh() line: 542
ContextLoaderListener(ContextLoader).configureAndRefreshWebApplicationContext(ConfigurableWebApplicationContext, ServletContext) line: 444
ContextLoaderListener(ContextLoader).initWebApplicationContext(ServletContext) line: 326
ContextLoaderListener.contextInitialized(ServletContextEvent) line: 107
StandardContext.listenerStart() line: 4853
StandardContext.startInternal() line: 5314