IoC(Inversion of Control)控制反转
IoC思想,是一种将对象的创建控制权由程序转移到外部的思想。这样,在程序中就不需要使用new来创建对象,而是使用由外部提供的对象。这样,当对象的创建方式有变时,程序中需要创建该对象的部分就可以免于修改,由此降低了程序的耦合度,使程序易于维护。
Spring实现了IoC思想。在core container中,由core和beans实现IoC功能。Spring中的BeanFactory类及其派生类作为IoC容器,负责对象的创建、初始化等工作,被创建、被管理的对象称为“bean”。
DI(Dependency Injection)依赖注入
一般的java程序中,对象之间存在依赖关系。将对象托管给IoC容器后,容器中的bean之间也应当存在依赖关系。在容器中建立bean之间的依赖关系的过程,称为DI。