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 iplist;

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

配置文件

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

#单个值
val=10
#List
list=1,2,3,4
#Map
map={'name':'chen', 'age':'12', 'sex':'男'}
#Map>
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")})

springboot application.properties 文件注入数组方式_第1张图片

数据注入

//单个数值,可注入为int或String
@Value("${val}")
private int val;
//数组
@Value("#{'${list}'.split(',')}")
private List list;
//map
@Value("#{${map}}")
private Map map;
//map of list
@Value("#{${map.of.list}}")
private Map> map;

测试结果

10

[1, 2, 3, 4]

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

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

springboot application.properties 文件注入数组方式_第2张图片

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

你可能感兴趣的:(springboot application.properties 文件注入数组方式)