java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > application.properties文件注入数组

springboot application.properties 文件注入数组方式

作者:knife1220

这篇文章主要介绍了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

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

您可能感兴趣的文章:
阅读全文