yml:
serious:
mapLow:
label: 低
value: 0
mapMiddle:
label: 中
value: 1
mapHigh:
label: 高
value: 2
java:
@Component
@Configuration
@PropertySource(value = {"classpath:/application.yml"}, encoding = "utf-8")
@ConfigurationProperties(prefix = "serious")
@Data
public class SeriousConfig {
/**
* 嚴重程度 低
*/
private Map<String, String> mapLow;
/**
* 嚴重程度 中
*/
private Map<String, String> mapMiddle;
/**
* 嚴重程度 高
*/
private Map<String, String> mapHigh;
}
java:
public List<Map<String, String>> getSerious() {
List<Map<String, String>> list = new ArrayList<>();
Map<String, String> lowMap = tools.seriousConfig.getMapLow();
Map<String, String> middleMap = tools.seriousConfig.getMapMiddle();
Map<String, String> highMap = tools.seriousConfig.getMapHigh();
list.add(lowMap);
list.add(middleMap);
list.add(highMap);
return list;
}
还有一种:
yml:
person:
lastName: hello
age: 18
boss: false
birth: 2017/12/12
maps: {k1: v1,k2: 12}
lists:
- lisi
- zhaoliu
dog:
name: 小狗
age: 12
java:
/**
* 将配置文件中配置的每一个属性的值,映射到这个组件中
* @ConfigurationProperties:告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;
* prefix = "person":配置文件中哪个下面的所有属性进行一一映射
*
* 只有这个组件是容器中的组件,才能容器提供的@ConfigurationProperties功能;
*
*/
@Component
@ConfigurationProperties(prefix = "person")
public class Person {
private String lastName;
private Integer age;
private Boolean boss;
private Date birth;
private Map<String,Object> maps;
private List<Object> lists;
private Dog dog;
//添加 getset方法
}
我们可以导入配置文件处理器,以后编写配置就有提示了
<!--导入配置文件处理器,配置文件进行绑定就会有提示-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>










网友评论