你怎么理解ioc/DI?

(1)ioc/DI其实是同一种概念的两种不同角度的理解罢了。

(2)ioc控制反转,首先到理解以下三个问题:
2.1:谁控制谁?我们知道容器的作用就是管理bean对象,所以Spring容器控制对象
bean对象通常以标签的形式出现在配置文件中,如:
<bean id="dataSource" class="">

</bean>


2.2:控制什么?Spring容器控制外部资源的获取
配置文件中的bean对象有属性property ,而这些属性就会读取外部资源,如:
<bean id="" class="">
<property name = "dataSource" value=""/>
<property name = "configLocation" value=""/>
<property name = "mapperLocation" value=""/>

</bean>


2.3如何理解反转?由容器提供给我们所需的依赖对象,并不是我们主动创建这个以来对象。

例如,

我想买个大房子,我不会直接找开发商买,我会找中介要房源。
站在房子的角度上来看,它是被中介推荐给我的,所以就是反转。
(3)DI依赖注入:描述了容器在运行期如何管理具有依赖关系的组件(bean对象),即容器动态的将某种依赖关系注入到组件中。
首先来理解一下几个问题:

3.1谁依赖谁?

应用程序依赖ioc容器。通常在某段java代码前添加注解,告诉容器自己所需要的资源是什么。想了解注解内容,请移步到其他文章


3.2为什么要依赖?

前面说过,容器控制外部资源的获取,应用程序要获得资源就得依赖容器。

3.3谁注入谁?

ioc容器注入应用程序依赖的对象。

3.4注入了什么?

注入某个对象所需要的外部资源

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值