从appfuse开始学习Spring和Hibernate - (2)Spring启动log

分析appfuse的详细的启动日志来看看Spring的启动过程。
1. 装载app上下文
main INFO  org.springframework.web.context.ContextLoader - Root WebApplicationContext: initialization started
。。。。。。。。。。

main INFO  org.springframework.web.context.ContextLoader - Root WebApplicationContext: initialization completed in 22509 ms

这里是通过ContextLoaderListener来调用initWebApplicationContext的方法initWebApplicationContext来开始的。
main DEBUG org.springframework.web.context.support.StandardServletEnvironment - Initialized StandardServletEnvironment with PropertySources [servletConfigInitParams,servletContextInitParams,jndiProperties,systemProperties,systemEnvironment]


2. 读取配置文件
main INFO  org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from class path resource [applicationContext-resources.xml]

在web.xml里面定义了很多spring配置文件:
<context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            classpath:/applicationContext-resources.xml
            classpath:/applicationContext-dao.xml
            classpath:/applicationContext-service.xml
            classpath*:/applicationContext.xml
            /WEB-INF/applicationContext*.xml
            /WEB-INF/xfire-servlet.xml
            /WEB-INF/security.xml
        </param-value>
    </context-param>

3. 创建Bean
通过XmlWebApplicationContext来调用DefaultListableBeanFactory创建Bean的实例。
main DEBUG org.springframework.web.context.support.XmlWebApplicationContext - Bean factory for Root WebApplicationContext: org.springframework.beans.factory.support.DefaultListableBeanFactory@1edd56f: defining beans [propertyConfigurer,dataSource,sessionFactory,transactionManager
。。。。。。。。。。

main DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Finished creating instance of bean 'userManager'


可以看出启动过程的核心在于Bean的创建。





猜你喜欢

转载自jackycheng2007.iteye.com/blog/1513000
今日推荐