三、Spring IOC 解析

  • 在准备阶段做的操作,是为了提高框架的可扩展性。

  • Spring提供的框架可扩展性?

    • 在对象创建之前添加某些功能。
    • 在容器初始化之前添加某些功能。
    • 通过监听器。在不同的阶段发生不同的事件,完成一些功能。(观察者模式)
    • 抽象出一堆接口,进行扩展。
    • 面向接口编程。

IOC与DI的关系

IOC (Inversion Of Control)是控制反转,也被称为DI(Dependency Injection)依赖注入。他是对象定义其依赖关系的过程。对象只
和构造参数,工厂方法参数,对象实例属性或工厂方法返回相关。

(一)重要接口

  1. BeanFactory: 能管理任何类型的对象。提供了配置框架和基本功能。
  2. ApplicationContext:表示Spring IoC容器,并负责实例化、配置和组装bean。

三、Spring源码解读 --- IOC容器解析

(二)配置元数据(Configuration Metadata)

定义:程序员告诉Spring容器在应用程序中怎样实例化、配置和组装对象。即配置文件。

配置元数据有三种形式:XML形式、注解形式、Java配置类(需要借助 @Configuration, @Bean, @Import, 和 @DependsOn 这几个注解)。

相关文章: