一、yml获取自定义键值对
yml中的键值对
test: map: key1: value1 key2: value2 key3: value3 pom中的依赖配置 org.springframework.boot spring-boot-configuration-processor true 代码:
@Component @ConfigurationProperties(prefix = "test") public class MyConfiguration { private String name; private Map map = new HashMap(); public Map getMap() { return map; } public String getName() { return name; } public void setName(String name) { this.name = name; } } 然后在调用层,如controller注入即可测试:
@Autowired MyConfiguration myConfiguration; 注意:该实例中的yml文件默认是:application.yml文件。也就是说,键值对要写在application.yml文件中;
二、properties 获取自定义键值对
config.properties 中的键值对:
test.map.key1=value1 test.map.key2=value2 test.map.key3=value3 pom中无依赖配置
代码:
@Component @Configuration @PropertySource(value = {"classpath:/config.properties"}, encoding = "utf-8") @ConfigurationProperties(prefix = "test") public class MyConfiguration { private String name; private Map map = new HashMap(); public Map getMap() { return map; } public void setMap(Map map) { this.map = map; } public String getName() { return name; } public void setName(String name) { this.name = name; } } 然后在调用层,如controller注入即可测试:
@Autowired MyConfiguration myConfiguration; 以上实例只是针对于map(键值对)的获取,相对于读取文件,解析文件流来说,方便了许多。希望可以用到时帮到看见的你,如有更好策略,可以留言,谢谢!