详解Spring框架----控制反转与依赖注入

1.Spring框架简介

Spring是一个轻量级的框架,它的主要特点控制反转IOC(Inversion Of Control)和面向切面AOP
好处:可以降低程序的耦合,便于编码

2.控制反转

控制反转IOC是一种思想,其核心是将创建对象的权力维护对象之间关系的权力交给第三方容器(比如Spring)。
依赖注入是实现控制反转思想的方法。
依赖注入(Dependency Injection):通过注入的手段来维护对象与对象之间的依赖关系
注入的方式有2种:set注入和构造方法注入。set注入是通过调用set方法来给属性赋值,构造方法注入即通过调用构造方法来给属性赋值

3.依赖注入的具体操作

(1) 使用set注入给属性赋值
例如:创建一个Student类,有属性stuId和stuName和age
在这里插入图片描述
创建一个spring配置文件,让spring去帮助我们创建对象,并给属性进行赋值
在这里插入图片描述
在spring 的配置文件中写bean标签,让Spring帮助创建对象。

<bean id=”唯一标识要创建对象的名称” class=”类的具体路径”/>
id:自己起名,唯一表示要创建对象
class:写要创建对象的全路径,具体到类

property标签用于给属性赋值,将value的值赋给name

测试:
在这里插入图片描述
其中 applicationContext为执行上下文,相当于spring容器,configLocation为创建的spring配置文件路径。
在解析spring配置文件的时候,就会实例化配置文件中的对象。
使用getBean方法获取创建的对象

测试结果:
在这里插入图片描述
(2)使用构造方法给属性赋值
在spring中创建对象时默认使用无参构造方法,因此要使用构造方法注入就需要重写有参构造方法。
在这里插入图片描述
修改配置文件
在这里插入图片描述
constuctor标签中,index表示构造方法中形参的下标(从0开始),value为对应形参的值
测试结果:
在这里插入图片描述

set注入和构造方法注入的区别

可以看出,set注入底层是通过set方法来进行属性的赋值,构造方法注入底层是通过构造方法进行属性的赋值。
set注入时已经创建好了对象,而构造方法注入是在创建对象的同时进行属性的赋值。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值