如果缺少@ConfigurationProperties
类的任何属性,如何在启动期间使Spring-Boot失败?
如果我改用@Value(...)
,则自动装配会按预期失败,但我想将所有属性集中到@ConfigurationProperties
类中,而不要使用通过应用程序传播的@Value
引用。
代码:
@Component
@ConfigurationProperties(value = "serving.api", ignoreUnknownFields = false)
public class ApplicationProperties {
private String projectId;
private String bigTableInstanceId;
public String getProjectId() {
return projectId;
}
public void setProjectId(String projectId) {
this.projectId = projectId;
}
public String getBigTableInstanceId() {
return bigTableInstanceId;
}
public void setBigTableInstanceId(String bigTableInstanceId) {
this.bigTableInstanceId = bigTableInstanceId;
}
}
最佳答案
您可以通过在必需属性中添加@NotNull
验证器来实现此目的。例如:
@NotNull
private String projectId;
public void setProjectId(String projectId) {
this.projectId = projectId;
}
关于java - 如果缺少属性,Spring Boot不会失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42560472/