前提,我们常见的读取方式
test:
list: ${TEST_LIST:http://xxx.com,http://ac.com,http://cd.com}
list2:
- "http://xxx.com"
- "http://ab.com"
@Configuration
public class TestConfig {
// java.lang.IllegalArgumentException: Could not resolve placeholder
@Value("${test.list}")
private String list;
}
@Configuration
public class TestConfig {
// java.lang.IllegalArgumentException: Could not resolve placeholder
@Value("${test.list}")
private String[] list;
}
@Configuration
public class TestConfig {
// java.lang.IllegalArgumentException: Could not resolve placeholder
@Value("${test.list}")
private List<String> list;
}
正确写法
@Configuration
@ConfigurationProperties("test")
public class TestConfig {
private List<String> list;
public List<String> getList() {
return list;
}
public void setList(List<String> list) {
this.list = list;
}
@Bean
public String mmString() {
System.out.println(list);
return "";
}
}
备注:
test:
list: ${TEST_LIST:[http://xxx.com,http://ac.com,http://cd.com]}
# 中括号错误
test:
list: ${TEST_LIIST:"http://xxx.com","http://ac.com","http://cd.com"}
# 不需要加引号