在stackoverflow上读取几个answers之后。我尝试按照推荐的方式实现,但我仍未在component
中获取字符串列表。
这是我的application.yml
文件
appName:
db:
host: localhost
username: userX
password: passX
driverClassName: org.postgresql.Driver
shipment:
providers:
supported1:
- one
- two
我的component
课程是
@Component
@ConfigurationProperties(prefix = "appName.shipment.providers")
public class ProviderUtil {
List<String> supported1;
/* This class has other util methods as well */
}
在这里,我希望supported1
包含字符串列表one
和two
,但它为空。有人可以帮助解决这里发生的事情以及解决方法吗?
答案 0 :(得分:1)
你的类路径是否有spring-boot-configuration-processor依赖? 试着看here
并且还将您的bean从@Component更改为@Configuration
答案 1 :(得分:0)
我关注了这篇文章,并为列表添加了getter和setter方法。它对我有用。
@Service("testservice")
@ConfigurationProperties(prefix="es")
public class TestService {
@Value("${url.endPoint}")
private String endpointUrl;
private List<String> scope;
public List<String> getScope() {
return scope;
}
public void setScope(List<String> scope) {
this.scope = scope;
}
..
}