我已经将一个 Spring Boot 项目从 2.2.5 迁移到 2.3.0,之后,验证停止工作(它们根本没有被调用)。
我在变更日志文档 ( https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.3.0-M1-Release-Notes ) 中阅读了 spring-boot-starter-validation
现在需要手动添加为依赖项。
所以,我将它添加到我的 pom.xml 中:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
我的父母是:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.0.RELEASE</version>
<relativePath></relativePath>
</parent>
我的控制器看起来像这样:
@PostMapping( value = "/signup", consumes = MediaType.APPLICATION_JSON_VALUE )
@ResponseStatus( value = HttpStatus.OK )
public void signUp( @Valid @RequestBody ClientDto clientDto )
{
onboardingService.signUp( clientDto );
}
编辑:
我能够找到问题,请在下面检查我的答案!
感谢大家的帮助!
原文由 martins.tuga 发布,翻译遵循 CC BY-SA 4.0 许可协议
验证启动器不再包含在 Web 启动器中。
spring-boot-starter-validation 不再是 spring-boot-starter-web 和 spring-boot-starter-webflux 的传递依赖。
添加此依赖项以进行验证工作。