序言
在之前我们使用的配置文件多是properties为后缀的文件
现在另一种格式文件开始流行,即yaml文件,后缀为yml
二者最大的区别就是语法格式不同
- application.properties
- 语法结构 :key=value
- application.yml
- 语法结构 :key:空格 value
yaml基础语法
说明:语法要求严格!
1、空格不能省略
2、以缩进来控制层级关系,只要是左边对齐的一列数据都是同一个层级的。
3、属性和值的大小写都是十分敏感的。
我们来看一些示例
#普通的key value
name: chen
=======================================
#对象
student:
name: chen
age: 18
#行内写法
student: {name: chen,age: 18}
=========================================
#数组
pets:
- cat
- pig
- dog
#行内写法
pets: [cat,pig,dog]
yaml文件更强大的地方在于,他可以给我们的实体类直接注入匹配值!
通过@ConfigurationProperties注解实现
示例代码
package com.chen.demo.pojo;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
/**
* Created by 莫荒 on 2022/5/6 10:34
*/
@Component
@ConfigurationProperties(prefix = "person")
public class Person {
private String name;
private int age;
@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public Person() {
}
}
person:
name: chen
age: 18