spring 启动
2016-03-08 15:53:35 1 举报
当启动Spring框架时,首先会加载配置文件和注解,然后通过反射机制创建Bean对象并注入依赖关系。接着,Spring会根据配置文件或注解中定义的Bean信息,将它们注册到容器中。最后,当应用程序需要使用这些Bean时,Spring会自动将它们注入到相应的位置。整个过程是自动化的,无需手动编写代码。
作者其他创作
大纲/内容
parseBeanDefinitions
ClassLoaderListener
\tApplicationContext parent = loadParentContext(servletContext);
wac.refresh();
wac.setConfigLocation
public org.springframework.context.config.ContextNamespaceHandler()
classpath:config/xml/applicationContext*.xml
contextInitialized
public org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader()
doRegisterBeanDefinitions
configureAndRefreshWebApplicationContext
refreshBeanFactory
判断是否初始化过spring上下文
this.contextLoader.initWebApplicationContext
createWebApplicationContext
DefaultBeanDefinitioinsdocumentreader.parseBeanDefinitions
创建他的实例 如果构造体是public就直接调用
this.context = createWebApplicationContext(servletContext);
setAccessibleConstructornewInstance
loadBeanDefinitions(app-context-config.xml)
解析所有的web.xml里配置的applicationContext.xml里配置文件信息
isAssignableFrom判断子类或接口
end
ContextLoader.initWebApplicationContext
BeanUtils.instantiateClass(org.springframework.web.context.support.XmlWebApplicationContext)
instantiateClass(clazz.getDeclaredConstructor())
返回XmlWebApplicationContext的实例
0 条评论
下一页