1、SpringBoot配置文件的分类
application.properties
语法结构:key=value
application.yml(application.yaml)
语法结构:key: (空格)value---->冒号后面必须有空格
在同一级目录入如果三类文件共存,优先级:prperties > yml > yaml
2、YAML理解
是一种直观的能够被电脑识别的的数据数据序列化格式,容易和脚本语言交互的,可以被支持YAML库的不同的编程语言程序导入。
3、YAML基础语法
1、字面量:普通的值 [ 数字,布尔值,字符串 ]
boolean: TRUE #TRUE,true,True,FALSE,false,False均可
float: 3.14 #6.8523015e+5 #支持科学计数法
int: 123 #0b1010_0111_0100_1010_1110 #支持二进制、八进制、十六进制
string: HelloWorld #字符串可以直接书写
2、数组:一组按次序排列的值( List、set )
address:
- 上海
- 杭州
- 西安
# 行内写法
commpany: [阿里巴巴,华为,腾讯,字节跳动]
3、对象、Map(键值对)
person1:
name: 光头强
age: 30
# 行内写法
person2: {name: 熊大,age: 21}
#对象数组格式一
users1:
- name: Tom
age: 4
- name: Jerry
age: 5
#对象数组格式二
users2:
-
name: Tom
age: 4
-
name: Jerry
age: 5
#对象数组缩略格式
users3: [ { name:Tom,age:4 },{ name:Jerry,age:5 } ]
4、YAML:参数引用
name: 熊二
person3:
name: 光头强
pet: ${name} # 引用上边定义的name值
message: 刘老师${random.uuid} # 配置文件占位符,随机uuid
5、批量注入
person:
email: wangyanyi_enginner@163.com
name: 王老师
age: 30
marry: true
birth: 1990/10/19
maps: {k1:v1,k2:v2}
lists:
- study
- sport
- 养生
dog:
name: summer
age: 2
last-name: 王
总结:
1. 大小写敏感
2. 数据值前边必须有空格,作为分隔符
3. 使用缩进表示层级关系 #
4. 缩进时不允许使用Tab键,只允许使用空格(各个系统 Tab对应的 空格数目可能不同,导致层次混乱)。
5. 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
6. "#"表示注释,从这个字符一直到行尾,都会被解析器忽略。