---------------------------------------------------2022.05.07--------------------------------------------------------------
一、初识Spring
什么是Spring?
一款轻量级的控制反转和面向切面编程的开源框架。创始人是音乐博士Rod Johnoson,其理念是使现有技术更易使用。
优点:
1.开源的免费的框架
2.轻量级的,非侵入式的框架
3.IOC(控制反转)和AOP(面向切面编程) (重点)
4.支持事务处理,支持框架整合
二、IOC设计思想
1. IoC设计思想
之前由程序员通过new来控制对象的创建,可面对不同的需求时,需要程序员创建很多对象,修改很多代码,IOC的设计思想就是把对象的控制权交给第三方(比如容器),我们想使用哪个对象就直接通过第三方调用,这就是控制反转。
Spring中实现控制反转的是IoC容器,其实现方法是依赖注入(DI)。每一个对象都要注入到IoC容器中,这些对象称为Bean,要使用的时候直接从容器中取出来就行,而不是通过new创建,总而言之,IoC就是对象由Spring来创建,管理,装配。
每一个Bean都有一个id属性,相当于变量名,有class属性,相当于对象的class类型,有property属性,相当于给对象赋值。
2. IOC创建对象的方式:
1-默认使用无参构造
2-使用有参构造:下标赋值,通过类型创建(不建议使用),直接通过参数名来设置
3. 通过编写配置文件来注入Bean:
编写配置文件,里面写一个个的bean标签来实现注入对象,
配置文件里常见的标签和属性:
bean标签:注册bean对象
id每个bean的唯一标识符
name给bean起别名
class:bean对象所对应的全限定名
import标签:导入其它配置文件,将多个配置文件合并在一起,使用的时候直接实现总的就行。
如何获取对象(bean)?
1-获取ApplicationContext,拿到Spring的容器
2-想要那个bean,就直接通过getBean()方法找bean对应的id
三、DI依赖注入
本质是set注入,依赖是指bean对象的创建依赖于容器。注入是指bean对象中的所有属性由容器来注入(简单理解为给对象的属性赋值)。
构造器注入
set注入