Ioc、DI以及Bean的理解"/>
spring的Ioc、DI以及Bean的理解
文章目录
- 什么是Ioc?
- Spring和这有什么关系
- Spring是怎么做的?
- 如果service层对dao层有依赖该怎么办?
- 什么叫做依赖注入
- Spring这样做的目的是什么
- 参考文献
什么是Ioc?
Ioc(Inversion of Control) 控制反转,就是使用对象时,由主动new产生对象转换为由 外部 提供对象,此过程中对象创建的控制权有程序转移到 外部 ,这种思想就叫做Ioc(控制反转)
Spring和这有什么关系
Spring把Ioc这个思想给实现了
Spring是怎么做的?
Spring提供了一个容器,称为 Ioc容器 ,用它来充当Ioc思想中的 外部,所以可以把上面的话理解为
使用对象时,由主动new产生对象转换为由 Ioc容器 提供对象
Ioc容器负责对象的创建和初始化,并且被创建或者管理的对象在Ioc容器中叫做 Bean
在Ioc容器中不仅有数据层实现dao的对象,还有业务层实现service的对象
如果service层对dao层有依赖该怎么办?
这个Spring也考虑到了,因为不管是service层的对象,还是dao层的对象,它们都是从Ioc容器中获取到的,所以service如果对dao有依赖,在Ioc容器中也给你实现了,这种方式就叫做DI(依赖注入)
什么叫做依赖注入
DI(Dependency Injection)依赖注入,就是在容器中建立bean与bean之间的依赖关系的整个过程
Spring这样做的目的是什么
- 目标:充分解耦
- 使用Ioc容器管理Bean (Ioc)
- 在Ioc容器中将有依赖关系的Bean进行关系绑定(DI)
- 最终效果
- 使用对象时不仅可以直接从Ioc容器中获取,并且获取到的bean已经绑定了所有的依赖关系
参考文献
1. 黑马程序员SSM框架教程
更多推荐
spring的Ioc、DI以及Bean的理解
发布评论