Spring5学习笔记 — “Spring IOC(控制反转)”

Posted 一切因为是码农

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring5学习笔记 — “Spring IOC(控制反转)”相关的知识,希望对你有一定的参考价值。


一、Spring—IOC概述

1. 什么是IOC

IOC(控制反转),是Spring框架基础,AOP、声明式事务等都是在此基础上实现的。使用IOC容器后,开发者不需要关心容器怎样运行的,也无需调用容器API,容器会自动对被管理的对象进行初始化,并完成对象之间依赖关系的维护

(1)把对象创建和对象之间的调用过程,交给Spring进行管理
(2)使用IOC目的:为了降低耦合度

​2. IOC底层

xml解析、工厂模式、反射

3. Spring提供的IOC容器实现的两种方式(两个接口)

(1)BeanFactory接口:IOC容器基本实现是Spring内部接口的使用接口,不提供给开发人员进行使用(加载配置文件时候不会创建对象,在获取对象时才会创建对象。)

​ (2)ApplicationContext接口:BeanFactory接口的子接口,提供更多更强大的功能,提供给开发人员使用(加载配置文件时候就会把在配置文件对象进行创建推荐使用!


二、IOC操作Bean管理(两种方法)

1. 什么是bean管理

Bean管理就是两个操作:
(1)Spring创建对象
(2)Spring注入属性

2. bean管理操作的两种方式

(1) 基于xml配置文件方式实现
(2)基于注解方式实现

3. IOC操作bean管理(基于xml)

3.1 基于xml创建对象

<!--1 配置User对象创建-->
<bean id="user" class="com.atguigu.spring5.User"></bean>

a)在Spring配置文件中使用bean标签,在标签里面添加相应属性即可完成对象创建;
b)bean标签常用属性:id:作为标签唯一标识符 class:类全路径(包名+类名)
c)创建对象时,默认调用无参构造方法进行对象创建(若设置了有参构造而没声明无参构造,则会报错)

3.2 基于xml注入属性
DI:依赖注入(给对象注入属性)

(1)使用set方法注入

(2)使用有参构造注入

以上是关于Spring5学习笔记 — “Spring IOC(控制反转)”的主要内容,如果未能解决你的问题,请参考以下文章

狂神说Java --- 记录Spring学习笔记

Spring5源码分析(003)——IoC篇之 spring IoC 容器体系总览(占坑待更新)

[Spring5]IOC容器_底层原理

[Spring5]IOC容器_Bean管理XML方式_自动装配

[Spring5]IOC容器_Bean管理XML方式_p名称空间注入

spring5:IOC 操作 Bean 管理(基于注解方式)