YAML
是
"YAML Ain't a Markup Language"
(YAML不是一种标记语言)的递归缩写。
在开发的这种语言时,
YAML
的意思其实是:
"Yet Another Markup Language"
(仍是一种标记语言)
1、yaml的基本语法
- application.properties
语法结构 : key=value
- application.yml
语法结构 :key:空格
value
配置文件的作用 :
修改
SpringBoot
自动配置的默认值,因为
SpringBoot
在底层都给我们自动配置好了;
- xml配置:
<server>
<port>
8081
<port>
</server>
- yaml配置:
server:
prot
:
8080
#普通的k-v
k1: v1
#对象
student:
name: s1
age: 1
person: {name: p1,age: 3} #行内写法
#数组
pets:
-dog
-cat
petss: [dog,cat] #行内写法
2、注入配置文件
yaml可以直接给实体类赋值
2.1普通的赋值
2.2通过yaml赋值
@ConfigurationProperties(prefix = "person") //配置绑定
如果报错,导入依赖即可
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
2.3通过指定文件赋值
3、yaml的特殊用法
person:
name: p1${random.uuid}${person.age:hello} #${random.uuid} 产生一个随机的uuid ${person.age:hello}如果person.age存在则为person.age,否则为hello
age: 2
另外yaml支持
松散绑定:last-name lastName