yaml注入配置文件
yaml文件强大的地方在于,他可以给我们的实体类直接注入匹配值!
1、编写实体类:Person 类和Dog 类
@Component //注册bean到容器中
public class Person {private String name;private Integer age;private Boolean happy;private Date birth;private Map<String,Object> maps;private List<Object> lists;private Dog dog;//有参无参构造、get、set方法、toString()方法
}
@Component //注册bean到容器中
public class Dog {private String name;private Integer age;//有参无参构造、get、set方法、toString()方法
}
2、在springboot项目中的resources目录下新建一个文件application.yml
person:name: ZuYage: 18happy: falsebirth: 2000/01/01maps: {k1: v1,k2: v2}lists:- code- girl- musicdog:name: 旺财age: 5
3、注入到我们的类中!
/*
@ConfigurationProperties作用:
将配置文件中配置的每一个属性的值,映射到这个组件中;
告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定
参数 prefix = “person” : 将配置文件中的person下面的所有属性一一对应
*/
@Component //注册bean
@ConfigurationProperties(prefix = "person")
public class Person {private String name;private Integer age;private Boolean happy;private Date birth;private Map<String,Object> maps;private List<Object> lists;private Dog dog;
}
4、去测试类中测试一下:
@SpringBootTest
class Demo1ApplicationTests {@Autowiredprivate Person person;@Testvoid contextLoads() {System.out.println(person);}}