导航:首页 > 文件管理 > spring的配置文件参数顺序

spring的配置文件参数顺序

发布时间:2024-10-31 22:32:40

A. springboot配置文件总结

springboot 本身支持多种灵活的配置方式,为开发 springboot 程序带来了很大的灵活性和扩展性,但是同时由于太灵活,经常会导致明明配置了相关属性,却没有生效。
本文总结了 springboot 配置文件的原理以及多个配置文件生效的顺序。

springboot 配置文件支持灵活的路径,以及灵活的文件名,用一个变量表达式总结如下:

部分源码如下:

当满足上述变量表达式的配置文件有多个时,会有一个配置的优先级。假设

上面每个条件组合起来,则最多有配置文件如下,且顺序从上到下:

获取属性时,按从上到下的顺序遍历由上述文件生成的属性资源对象 PropertySource ,如果遇到匹配的key直接返回。
总结一下:就是如果同一个key的属性只出现一次,则直接取该值即可。如果同一个key的属性出现多次,则取顺序靠前的属性资源对象。另外其中每个文件都是可选的。

需要注意的一点是:如果在同一个 location 下配置了多个文件名一样的文件,则只会取一个,比如在 classpath:/ ,有如下两个文件 application.yml :

则只会根据 classloader 的 classpath 列表,选取第一个出现的文件。因为 springboot 加载配置文件时最底层是使用的下面的方法:

这两个方法只会获取 classloader 类的 ucp 属性里面第一个匹配到的值。如果对 springboot 自身的机制不满意,想获取所有的classpath:/路径下面的 applicaiton.yml 文件,可以使用下面的方法:

本文总结了 springboot 配置文件的原理以及多个配置文件生效的顺序。如果存在增加了配置文件或者在配置文件里面增加了属性却没有生效,可以参考上面的 springboot 配置文件表达式和配置文件生效顺序进行排查。

后面还会有一篇文章讨论基于 springboot 配置原理如何实现自定义的配置读取方式。

B. springboot的配置文件有哪几种

Spring Boot的配置文件主要有两种:properties文件和yaml文件。
1. properties文件:这是Spring Boot的默认配置文件格式,它采用的是键值对的形式存储配置信息,键值对之间通过等号“=”进行连接。比如:
arino
server.port=8080
spring.datasource.url=jdbc:mysql://localhost/test
这种格式的优点在于它的简洁易读,上手难度低。缺点则是当配置信息复杂且数量众多时,容易变得混乱。
2. yaml文件:YAML是一种数据序列化格式,通常用于配置文件。Spring Boot也支持YAML格式的配置文件,它的文件扩展名通常为.yml或.yaml。YAML文件的结构更清晰,可以更好地组织复杂的配置信息。比如:
yml
server:
port: 8080
spring:
datasource:
url: jdbc:mysql://localhost/test
YAML文件的优点在于它的结构清晰,易于组织和管理复杂的配置信息。尤其是在处理多级配置的时候,YAML的层级结构能够直观地体现出配置的层级关系。缺点则是YAML的语法相较于properties稍显复杂,对新手可能有一定的学习门槛。
总结:Spring Boot的这两种配置文件格式各有优缺点,开发者可以根据自己的需求和习惯选择合适的配置文件格式。对于简单的配置信息,properties文件是一个不错的选择;而对于复杂的配置信息,YAML文件则能够更好地进行组织和管理。

阅读全文

与spring的配置文件参数顺序相关的资料

热点内容
电脑如何分区数据不丢失 浏览:932
压缩文件软件安装视频 浏览:676
数据库只显示年 浏览:50
cad大文件复制粘贴到另一个文件里 浏览:636
党支部要学习的文件有哪些 浏览:791
腾讯在手机储存里的文件名 浏览:314
java不确定长度数组 浏览:655
网站搭建了怎么修改里面东西 浏览:846
苹果系统10降级到9 浏览:975
spss数据文件下载 浏览:533
别人发来的文件怎么安装软件 浏览:114
退休文件由哪里下发 浏览:740
电脑接收文件为什么用不了 浏览:60
怎么把二维码放在word文件 浏览:671
苹果6系统升级到1032 浏览:697
jsp获取当前服务器ip 浏览:159
pdf多个文件合并 浏览:696
javajunit包免费下载 浏览:96
10怎么更改icloud账户密码 浏览:376
win10版本14393 浏览:247

友情链接