如何在组件类中使用在各种YAML文件中定义的属性??
在以前使用@ConfigurationProperties(locations =“ classpath:abc / somelocation.yml”)完成此操作之前,现在已删除了该属性。在版本1.5中,另一种定义的方法是什么?
我尝试使用@PropertySource并在其中定义类路径,但对我不起作用。 我不明白spring.config.location的概念
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;
@Component
@PropertySource("classpath:applicationConstants.properties")
@ConfigurationProperties("constant")
public class ReadApplicationConstants {
private String clientId;
public String getClientId() {
return clientId;
}
public void setClientId(String clientId) {
this.clientId = clientId;
}
}
因此,在任何方法中使用getClientId时,我都会得到空指针异常。
答案 0 :(得分:0)
如果clientId来自属性文件,则必须使用 字段上的@Value批注。 示例:
@Value(value = "${clientId}")