一、定义
1、依赖注入(Dependency Injection)
当某个java 实例需要另一个java实例时,创建被调用者的工作不是由调用者实现,而是由spring容器来完成,然后注入调用者,因此称为依赖注入。
2、控制反转(Inversion of Control,英文缩写为10C)
把创建对象的权利交给容器,对象的实例不再由调用者来创建,而是由容器来创建,容器会负责控制程序之间的关系,而不是由调用者的程序代码直接控制。这样,控制权由应用代码转移带了容器,控制权发生了反转,这就是控制反转。它是spring框架的核心思想之一。
二、理解
控制反转和依赖注入本质是一种通过容器创建存储调用实例的技术的不同角度描述;
1、控制反转是从创建对象的控制权的角度描述的,由以前的调用者创建被调用者实例,控制权在调用者,而现在由Spring容器去创建,控制权反转交给容器;
2、依赖注入是从调用的方式上描述,是控制反转的一部分(控制反转包括依赖注入(DependencyInjection,简称DI)和依赖查找(Dependency Lookup)),以前,是通过调用者去创建实例实现依赖,现在通过Spring容器创建后,由spring容器实现对象的依赖,注入是描述Spring容器对这一实现依赖行为的抽象;


1764

被折叠的 条评论
为什么被折叠?



