I want to have a list of values in a .properties file, ie:
my.list.of.strings=ABC,CDE,EFG
And to load it in my class directly, ie:
Have you considered @Autowireding the constructor or a setter and String.split()ing in the body?
class MyClass {
private List myList;
@Autowired
public MyClass(@Value("${my.list.of.strings}") final String strs) {
myList = Arrays.asList(strs.split(","));
}
//or
@Autowired
public void setMyList(@Value("${my.list.of.strings}") final String strs) {
myList = Arrays.asList(strs.split(","));
}
}
I tend to prefer doing my autowiring in one of these ways to enhance the testability of my code.