springboot~yml里的自定義配置(zhi)~續
之前寫了關于讀取自定義配置的文章springboot~yml里的自定義配置,而今(jin)天主要說一(yi)下對復雜(za)配置信(xin)息的讀取方法(fa),我(wo)們簡單的配置用@Value注解就可(ke)以了(le),而結(jie)構(gou)復雜(za)的一(yi)般使用@ConfigurationProperties來實現,下面說一(yi)下。
配置信息
config-attributes:
value: 345 #對應單個值
valueArray: 1,2,3,4,5,6,7,8,9 #對應數組
valueList: #對應list
-13579
-246810
valueMap: #對應map
name: lili
age: 20
sex: female
valueMapList: #對應list<map>
- name: bob
age: 21
- name: caven
age: 31
開啟ConfigurationProperties功能
@SpringBootApplication
@ConfigurationProperties
public class BootstrapConfig {
public static void main(String[] args) {
SpringApplication.run(BasicApplication.class, args);
}
}
建立配置類
@Component
@Getter
@Setter
@ConfigurationProperties(prefix = "config-attributes")
@ToString
public class Config {
private String value;
private String[] valueArray;
private List<String> valueList;
private HashMap<String, String> valueMap;
private List<Map<String, String>> valueMapList;
}
測試
@Autowired
private Config config;
@Test
public void readConfigNode() {
System.out.println(config.toString());
}
測試結果
Config(value=345, valueArray=[1, 2, 3, 4, 5, 6, 7, 8, 9], valueList=[-13579 -246810], valueMap={name=lili, age=20, sex=female}, valueMapList=[{name=bob, age=21}, {name=caven, age=31}])
總(zong)結:簡(jian)單配置(zhi)用@Value,復雜配置(zhi)用ConfigurationProperties。