SpringBoot中yaml语法取代properties,如需使用命名为application.yaml
1.yaml语法格式使用键值对 a: b 的形式(:后必须跟一个空格),yaml对空格的要求是很严格的。
2.yaml中支持复杂类型的封装,支持JSR303数据校验,支持松散语法。
在pojo中使用@ConfigurationProperties与yaml绑定
@Component//成为SpringBoot组件
@ConfigurationProperties(prefix = "person")//完成与yaml的绑定
yaml除了可封装类型,还支持占位符${}
person:
name: acofkings${random.uuid}
#获取随机uuid
age: ${random.int(100)}
#随机获取一个100以内int类型数字
happy: true
birth: 1999/12/07
maps: #Map类型
k1: v1
k2: v2
list: #List类型
- 12
- 15
- 31
dog:
name: ${person.hello:hello}_Dave
#判断person.hello是否存在,存在则输出,不存在则输出:之后的hello
age: 10
测试输出
package com.acofkings.springboot;
import com.acofkings.springboot.pojo.Person;
import org.junit