Spring——核心概念

本文深入探讨Spring框架的核心概念——控制反转(IOC)与依赖注入(DI)。讲解了IOC如何通过工厂模式、反射和配置文件实现代码解耦,以及BeanFactory与ApplicationContext的区别。同时,详细介绍了依赖注入的原理及四种注入方式:set方法注入、构造方法注入、p名称空间注入与spel注入。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、控制反转IOC

1)控制:控制对象的创建和销毁(生命周期)
2)反转:以前创建对象由程序员完成,现在由spring来完成,底层可以理解为“工厂+反射+配置文件”实现程序解耦合
在这里插入图片描述
3)BeanFactory:老版本的工厂
调用getBean的时候,才会生成类的实例
ApplicationContext:新版本的工厂
ApplicationContext:加载配置文件的时候,就会将Spring管理的类都实例化

4)ApplicationContext有两个实现类
ClassPathXmlApplicationContext 加载类路径下的配置文件
FileSystemXmlApplicationContex:加载文件系统下的配置文件

二、依赖注入

1)前提要有IOC
2)组件不做定位查询,只提供普通的Java方法让容器去决定依赖关系。容器全权负责的组件的装配,它会把符合依赖关系的对象通过JavaBean属性或者构造函数传递给需要的对象。

  • 注入方式:
    1)类中set方法注入
    类中必须有属性的set方法
    必须有无参构造函数,默认是有的,可以自己写出来
    在这里插入图片描述
    2)类构造方法注入:使用的是有参构造函数
    在这里插入图片描述
    3)p名称空间注入(Spring2.5以后提供)
    加入新约束:
    xmlns:p=“http://www.springframework.org/schema/p”
    在这里插入图片描述
    4)spel注入(Spring3.0以后)
    Spring Expression Language,Spring的表达式语言
    在这里插入图片描述
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值