springboot application.properties 文件註入數組方式

application.properties 文件註入數組

1.application.properties

ips=192.168.0.105,192.168.0.106,0:0:0:0:0:0:0:1

2.代碼

@Value("#{'${ips}'.split(',')}")
private List<String> iplist;

在application.properties中註入value,list和map

配置文件

在配置文件中配置需要註入的值。

#單個值
val=10
#List
list=1,2,3,4
#Map<String, String>
map={'name':'chen', 'age':'12', 'sex':'男'}
#Map<String, List<String>>
map.of.list={\
  'KEY1': {'value1','value2'}, \
  'KEY2': {'value3','value4'}, \
  'KEY3': {'value5'} \
 }

註解

使用@PropertySource註解標明配置文件路徑,同時引入多個配置文件可使用@PropertySources註解

@PropertySource(value = {"classpath:application-left.properties"})
@PropertySources({@PropertySource(value = "classpath:application.properties", encoding = "UTF-8")})

in

數據註入

//單個數值,可註入為int或String
@Value("${val}")
private int val;
//數組
@Value("#{'${list}'.split(',')}")
private List<Integer> list;
//map
@Value("#{${map}}")
private Map<String, String> map;
//map of list
@Value("#{${map.of.list}}")
private Map<String, List<String>> map;

測試結果

10

[1, 2, 3, 4]

{name=chen, age=12, sex=男}

{KEY1=[value1, value2], KEY2=[value3, value4], KEY3=[value5]}

result

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。

推薦閱讀: