Spring源码梳理

ioc容器的初始化

核心方法是 AbstractApplicationContext#refresh(),调用了抽象方法AbstractApplicationContext#refreshBeanFactory(),由改方法完成ioc容器的初始化工作。如果是XmlWebApplicationContext ,则会使用XmlBeanDefinitionReader类来实现从xml中读取、解析bean的定义信息。

XmlWebApplicationContext为例,BeanDefinition的定位、加载、注册过程中涉及到的核心类有

  • Resource ,代表配置bean信息的资源,例如xml文件
  • DocumentLoader,从Resouce中读取数据生成Docuement对象,可以从中读取XML文件的结构化数据。
  • BeanDefinitionDocumentReader,解析Document数据,生成BeanDefinition对象。具体的解析工作委托给BeanDefinitionParserDelegate来完成。

你可能感兴趣的:(java,spring)