编程随笔-SpringBoot | 10.IOC控制反转和DI依赖注入

0.前言

参考视频:

spring还不懂IOC和AOP?一节课教你怎么吃透

1.IOC - 控制反转

1.1.概念

将对象的创建 以及 对象的调用过程都交给Spring管理

Spring则创建一个IOC容器(本质是一个Map对象)

通过反射机制创建bean以等待调用

1.2.目的

降低耦合度

1.3.调用

调用的方式就是所谓的依赖注入

2.DI - 依赖注入

2.1.基本描述

以往获取对象,通过下方代码实现:

StudentService studentService = new StudentService();

如今通过依赖注入的方式获取对象(此方式为接口注入):

@Resource
StudentService studentService;

2.2.注入方式

  • 接口注入
  • setter注入
  • 构造器注入

2.2.1.常用方法 - 接口注入(注解方式注入)

接口:StudentService

实现类:StudentServiceImpl

@Resource
StudentService studentService;

上述代码将一个实现类StudentServiceImpl,注入到了接口StudentService中以获取对象,这种方式就被称为接口注入

2.2.2.其他方式

三种方式的依赖注入、给各种集合类型的属性注入值

1) setter注入

编写bean时写好标签

Spring在创建bean时,调用对应的setter注入value

image-20210703154257253

2) 构造器注入

编写bean时写好标签

属性内容
name属性的名字(TeaName,TeaAge)
value属性的值
type属性的类型
index属性在构造器中对应的索引,假如在IoC中的赋值顺序与构造器的顺序不一致,可以指定索引(也可以用name或type指定)
ref当属性是引用类型(类属性),用ref指定,值就是这个bean在IoC中的id

image-20210703155415483

image-20210703155552295

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值