gpt4 book ai didi

spring-boot - 当 Spring Boot 应用程序启动时,JSR-303 注释不会验证 bean 属性

转载 作者:行者123 更新时间:2023-12-04 22:55:34 25 4
gpt4 key购买 nike

我需要在启动时验证属性 bean,如果验证失败,应用程序将无法启动。

我有一个包含环境变量提供的配置的 bean:

@Component
public class AdminConfig
{
@NotNull( message = "username can't be null")
@NotEmpty( message = "username can't be empty")
@Value(value="#{environment.username}")
/** username to the admin portal **/
private String username;

@NotNull(message = "password can't be null")
@NotEmpty(message = "password can't be empty")
@Value(value="#{environment.password}")
/** password to the admin portal **/
private String password;
}

我有一个驱动程序类:
/**
* Driver class.
*/
@EnableAutoConfiguration
public class Main {

/**
* Driver method.
* @param args Command line arguments.
*/
public static void main(final String[] args) {
SpringApplication.run(Main.class, args);

}
}

我有以下 POM 条目:
<dependencies>
<!-- Spring -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
<!-- Validation annotations -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
</dependencies>

当我在没有设置环境变量的情况下启动应用程序时, AdminConfig bean 已创建 但验证不会触发 应用程序启动。

我期望/要求应用程序由于验证失败而无法启动。

最佳答案

在 AdminConfig 中使用 @Validated 注释

关于spring-boot - 当 Spring Boot 应用程序启动时,JSR-303 注释不会验证 bean 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49099646/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com