上下文开始读取Bean定义的入口方法
org.springframework.web.context.support.XmlWebApplicationContext#loadBeanDefinitions(org.springframework.beans.factory.support.DefaultListableBeanFactory)
Bean定义读取器的加载Bean定义的方法
org.springframework.beans.factory.support.AbstractBeanDefinitionReader#loadBeanDefinitions(java.lang.String)
具体流程是将配置文件的路径使用ResourceLoader封装为Resource对象,再由Resource转为InputSource,并作为参数执行下述方法
org.springframework.beans.factory.xml.XmlBeanDefinitionReader#doLoadBeanDefinitions
在该方法中将inputSource加载到document对象中,并执行下述方,将document中的bean定义进行注册
org.springframework.beans.factory.xml.BeanDefinitionDocumentReader#registerBeanDefinitions
默认实现上述方法的类及方法
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader#doRegisterBeanDefinitions
主要用到一个专门的SpringContext装在代理类org.springframework.beans.factory.xml.BeanDefinitionParserDelegate。
它会将配置文件中的所有节点进行装配。