一、Spring IOC是什么


  •  IOC:控制反转,是一种设计模式。
  • 一层含义是控制权的转移,由传统的在程序中控制依赖转移到由容器来控制。
  • 第二层是依赖注入:将相互依赖的对象分离,在Spring配置文件中描述他们的依赖关系,他们的依赖关系只在使用的时候才建立,简单来说就是不需要的NEW一个对象了。

    
二、Spring IOC简单原理


实现步骤:

  1. 加载并且保存Spring配置文件路径信息,然后保存到configLocation中。
  2. 刷新Spring上下文。
  3. 创建并且载入DefaultListableBeanFactory(即BeanFactory)。
  4. 根据DefaultListableBeanFactory创建XMLBeanDefinitionReader,用于后面读取xml配置文件信息。
  5. 创建BeanDefinitionDelegate代理类,用于解析xml配置信息。
  6. 解析xml中配置的<import>、<beans>、<alias>等不同的标签信息,以便于可以使用不同的解析器进行解析。
  7. 通过XMLBeanDefinitionReader结合location路径信息读取Resources资源信息。
  8. 使用BeanDefinitionDelegate代理类解析Bean元素并且依次进行实例化操作,实例化完毕之后将Bean信息注册(put)到BeanDefinitionMap中以便于可以下次继续使用。
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐