关于yml文件字符串,List,Map的书写方式并使用@ConfigurationProperties注入配置类
作者:搏·梦
这篇文章主要介绍了关于yml文件字符串,List,Map的书写方式并使用@ConfigurationProperties注入配置类,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
1. 常规例子
先准备好一个配置类,如下:
1. 使用@ConfigurationProperties 该类必须是个bean对象。
2. 该类必须有setting方法,否则无法注入值。
@Setter @Getter @Component @ConfigurationProperties(prefix = "test") public class TestConfig { // 字符串 private String userName; // Integer private Integer sum; // boolean private boolean flag; private int size; // 对象 private Person person; // List<对象> private List<Person> personList; // Map<String, 对象> private Map<String, Person> map; @Setter @Getter static class Person { private String name; private int age; } }
yml文件写法如下:
test: user-name: test1 sum: 20 flag: false size: 100 person: name: person1 age: 18 person-list: - name: person1 age: 1 - name: person2 age: 2 - name: person3 age: 3 map: key1: name: map1 age: 1 key2: name: map2 age: 2
结果:
2. 非常规例子(不建议)
@ConfigurationProperties 不配prefix,默认是从yml文件根结构开始,如下例子:
@Setter @Getter @Component @ConfigurationProperties() public class TestConfig { // List<对象> private List<Person> personList; @Setter @Getter static class Person { private String name; private int age; } }
person-list: - name: person1 age: 1 - name: person2 age: 2 - name: person3 age: 3
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。