Spring Boot 中yaml 配置文件
前题
基于:IntelliJ IDEA、Maven构建工具、JDK1.8、SpringBoot 2.3.4编写。
官人如需使用 Maven 请阅读教程:Maven 构建工具的下载与安装
官人如需使用 IDEA 请阅读教程:IntelliJ IDEA
更多干货
请参考:Java学习资料
定义:
Yaml是什么?
Yaml是JSON的一个超集,是一种方便的定义层次配置数据的格式.
结构层次上清晰明了,配置简单易读、易用。要想使用YAML作为属性配置文件,
需要将SnakeYAML库添加到classpath下,Spring Boot对SnakeYAML库也做了集成,例如使用spring-boot-starter-web或spring-boot-starter都会自动添加SnakeYAML库到classpath下。
要求:
1.后缀名 .yml .yaml
2.用缩进来表示层级关系:且缩进必须使用空格,不能使用tab键。
3.他是区分大小写的。
下面将进行简单的application.yml配置文件的属性配置,睁大眼看清楚哦。
为了让SpringBoot更好的生成数据,我们需要添加如下spring-boot-configuration-processor依赖,该依赖只会在编译时调用,所以不用担心会对生产造成影响
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
使用
application.yml的配置文件
application.yml配置文件中可以定义很多东西。
对象、map
写法:key: value (注意:冒号后的空格不能省略)如下图代码。
#介值对
com:
example:
boot:
map:
aaa: 123
bbb: 456
ccc: 789
#行内写法
map: {
aaa: 123,bbb: 456,ccc: 789}

数组、集合
写法:用 - 来定义元素
#方式一:
com:
example:
boot:
arr:
- 1
- 2
- 3
list:
- a
- b
- c
set:
- true
- false
#方式二:行内的写法
arr: [1,2,3]
list: [a,b,c]
set: [true,false,true]
属性名
当Java属性名是驼峰形式,比如:lastName
com:
example:
boot:
# 关于属性名有三种写法
lastName: hello yml1
last-name: hello yml2
last_name: hello yam3
占位符
${} 可以引用其他配置 ,不支持行内写法
server:
port: 8080
com:
example

本文详细介绍了SpringBoot中yaml配置文件的使用,包括配置文件的定义、要求、使用方法、对象与集合的表示、属性名、占位符、字符串、profile支持以及配置文件的优先级。同时,提供了配置文件存放位置、配置对象类的编写、启动类的创建、pom.xml依赖等实战操作,并讨论了profile的激活方式和配置优先级。
最低0.47元/天 解锁文章
325





