【Spring】IOC&DI概述

IOC(Inversion Of Control)

IOC,即控制反转,是一种设计思想。

传统Java SE设计思想:直接对象内部通过New关键字创建一个对象,即程序主动去创建依赖对象。

c389844cb382f2de7610d57bfdb82a9a5c7.jpg

IOC:把创建和查找对象的控制权交给IOC容器,由容器进行注入组合对象。

979a813b0f82d34f5b220c9e8787d834570.jpg

DI(Depandency Injection)

DI,即依赖注入,是IOC的另一种表述方式。相对IOC,这种表述更直接。

  • 谁依赖谁:应用程序依赖IOC容器。
  • 为什么需要依赖:应用程序需要IOC容器提供对象所需要的外部资源。
  • 谁注入谁:IOC容器注入应用程序某个对象,应用程序依赖的对象。
  • 注入什么:注入某个对象所需要的外部资源(对象、资源、常量数据)。

IOC&DI

IOC与DI是同一个事情的不同表述。

IOC从IOC容器的角度进行描述:IoC/DI容器反过来控制应用程序,控制应用程序锁所需要的外部资源(比如:外部资源)。

DI从应用程序的角度进行描述:应用程序依赖IoC/DI容器,依赖它注入所需要的外部资源。

参考文章:

https://www.cnblogs.com/xdp-gacl/p/4249939.html

https://www.cnblogs.com/chenyin/p/4819099.html?utm_source=tuicool&utm_medium=referral

转载于:https://my.oschina.net/u/3867381/blog/1819349

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值