Spring中@Value注解通常用法是${},但一些特殊情况,需要Set、Map、List的配置,则要用到SpEL表达式#{}实现。如下:
@Value("#{'${biz.xxx.array}'.split(',')}")
private String[] xxxArray;
@Value("#{'${biz.xxx.list}'.split(',')}")
private List<String> xxxList;
@Value("#{'${biz.xxx.set}'.split(',')}")
private Set<String> xxxSet;
@Value("#{${biz.xxx.map}}")
private Map<String, Object> xxxMap;