IOC 和 DI 概念介绍
IOC(inversion of control): 控制反转
在没用spring 时候,要实例化一个对象,可以通过 new 或者反射来实例化。这些工作都需要开发者调用的时候就去手动创建。当使用了spring ,则实例的创建将不再需要开发者手动实例化,实例化的工作交给spring 去实现,我们只需要定义类。把实例化的控制权交给spring 叫控制反转。
DI(dependence injection): 依赖注入
依赖注入是控制反转概念的具体实现。所以 IOC 即是DI. 通过类定义的构造函数 或 依赖项(属性,setter 或者 其他引入的类),来创建对象的实例。依赖构造函数或者 依赖项来实例化对象 叫依赖注入。
容器介绍
用户定义实例对象,xml中配置类属性参数,spring 容器为系统生成对象的实例。
1. 元数据配置有两种方式:xml 和 java 类注解的方式。
2. 容器的实例化:spring 的 ApplicationContext 是容器实例的核心,将元数据配置和pojo进行绑定,生成实例,并且提供实例的获取方法getBean(.....).