1、IoC 英文名称(Inversion of Control),中文名称:控制反转。
这里的控制主要是指对对象的控制,反转是指转交给Spring容器进行管理。
因此IOC的解释为:在程序中,把原有的对象实例化的过程交给Spring进行统一管理.
2、IoC好处:
最大的好处就是解耦了。以前程序员自己创建对象,利用Spring的IoC特性可以解除对象对程序员的依赖.程序员只考虑业务就可以,不需要考虑对象创建过程。
如果对象创建过程比较复杂.只需要在Spring中配置一次,以后都获取这个对象即可,不需要频繁创建(默认情况下Spring中对象是单例)
因为对象默认是单例,可以实现对象复用,可以进行对象传值,节约系统资源。
3、DI的英文名称(Dependency Injection),中文名称:依赖注入。
注入: 给类的属性赋值的过程叫做注入.
因此依赖注入的解释为: 当一个类中依赖另一个对象时,给依赖的对象注入的过程叫做依赖注入.
4、为什么这么说IoC和DI是同一个事情?
IoC指的是由Spring创建对象,在创建对象过程中给类的属性赋值也属于IoC的范畴.
DI指的是当类中依赖另一个对象,进行注入的过程是DI,也属于是给类的属性赋值
所以说IoC和DI是同一个事情
5、使用DI特性时,在applicationContext.xml中一定会
5.1 先创建一个<bean>
5.2 再创建一个<bean>,在这个<bean>的<property>通过ref引用第一个<bean>的id值