IOC容器与DI依赖注入示例

IOC容器与DI依赖注入示例

IOC深入理解

我们先通过几个问题来加深一下对IOC的理解

  • (1)Spring是使用IOC容器来管理bean对象的,我们主要管理什么?

主要管理项目中所使用到的类对象,比如(Service层对像和Dao层对象)

  • (2)如何将被管理的对象告知IOC容器?

使用配置文件
Spring配置文件

  • (3)被管理的对象交给IOC容器,要想从容器中获取对象,我们如何获取到IOC容器?

Spring框架提供相应的接口

  • (4)IOC容器得到后,如何从容器中获取bean?

调用Spring框架提供对应接口中的方法

  • (5)使用Spring导入哪些坐标?

用别人的东西,就需要在pom.xml添加对应的依赖

IOC示例:

接下来我们完整的来熟悉一下流程:

1、首先我们需要导入Spring依赖,使其变成Spring项目

引入Spring

2、创建配置文件并配置Bean

配置bean

3、主程序中便可引用
使用

我们之前说过充分解耦的结果是使业务层中不在保留数据层对象,但是很明显,我们的代码依然在service层中new了dao层对象如下图所示,下面我们就通过DI解决完成完全解耦。
不完全解耦

DI深入理解

要想实现依赖注入,必须要基于IOC管理Bean

-(1)Service中使用new形式创建的Dao对象是否保留?

需要删除掉,最终要使用IOC容器中的bean对象

  • (2)Service中需要的Dao对象如何进入到Service中?

在Service中提供方法,让Spring的IOC容器可以通过该方法传入bean对象

  • (4)Service与Dao间的关系如何描述?

同样使用配置文件

DI示例

1、删除service层中new的dao层对象并在service层中提供相应的set方法

这一步相当于删掉业务层的dao对象并告诉service层需要的dao对象该如何获取(通过set方法),结束时,我们还不知道二者关系,需要利用配置文件建立关系
修改service层

2、修改配置文件建立service层与dao层的关系

配置修改

文章提及代码压缩包资源

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一哑7

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值