yaml语法
基本语法
- 大小写敏感
- 使用缩进表示层级关系
- 缩进不允许使用tab,只允许空格
- 缩进的空格数不重要,只要相同层级的元素左对齐即可
- '#'表示注释
# 普通的key-value
name: lyh
# 对象
student:
name: s
age: 18
# 行内写法
student: {name: 张三,age: 20}
# 数组
names:
-tom
-sam
-martin
# 行内写法
names: [tom,sam,martin]
yaml可以直接给实体类赋值
@ConfigurationProperties
// 将配置文件中配置的每一个属性的值,映射到这个组件中
// 告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定
// @ConfigurationProperties(prefix = "person")
// 只有这个组件是容器中的组件,才能使用容器提供的@ConfigurationProperties功能
配置yml和配置properties都可以获取到值
如果业务中,只需要获取配置文件中的某一个值,可以使用@value
如果我们编写了一个JavaBean来和配置文件进行映射,就直接使用@ConfigurationProperties
JSR303数据校验
在字段上增加一层过滤器验证,可以保证数据的合法性
配置文件的位置
多环境配置
application.properties
application-test.properties
application-dev.properties
# spring boot的多环境配置,可以选择激活哪一个配置文件
spring.profiles.active=dev