Spring源码学习 | PropertySource配置源

本文详细探讨了Spring框架中的PropertySource配置源,包括MapPropertySource、PropertiesPropertySource、ResourcePropertySource、StubPropertySource和RandomValuePropertySource等实现类。PropertySource抽象类代表配置源,具有名字和源两个元素。MapPropertySource使用HashMap存储配置,PropertiesPropertySource通过Properties加载配置文件,ResourcePropertySource实现了资源加载,StubPropertySource为空配置源,RandomValuePropertySource提供随机配置值。同时,文章还介绍了PropertySources,即配置源列表,由MutablePropertySources实现,存储配置源的ArrayList。
摘要由CSDN通过智能技术生成

所有的应用都存在配置,比较常见就是以配置文件的形式出现,比如:SpringBoot 应用中的 application.properties 或者 application.yaml

配置有一个明显的特点就是键值对,配置并不局限于配置文件,只要是键值对形式的都可以作为配置使用,比如:启动命令中可以通过 -D 携带配置,甚至内存中的 Map 也可以作为配置。

每一个出现配置的地方,可以认为是一个配置源,一个应用中可以出现多个配置源。不同配置源中的配置可能存在重复的现象,所以多个配置源之间需要有一个优先级。

PropertySource - 配置源

Spring 抽象了一个 PropertySource 抽象类用于表示配置源,配置源包含两个元素:

  • 名字(name),名字是配置源的唯一标识,多个配置源通过名字进行区分。
  • 源(source),存储配置的数据结构,可以是 MapProperties 或者其它任何可以存储键值对的数据结构。
public abstract class 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值