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