
记一次@NotEmpty失效问题

最近在接手一个新项目中,使用@NotEmpty注解无效,但是@NotNull注解却可以使用,百思不得其解,网上也查了一些资料,说springboot版本问题,让加spring-boot-starter-validation
依赖,但是加了也没效果,Controller上加了@Validated注解,方法上也加了@Valid注解,都没效果。最后发现是因为早期的Hibernate Validator
版本可能对@NotEmpty不支持,项目中正好也单独引入了Hibernate Validator
,删除掉依赖后,使用spring-boot-starter-validation
的依赖就好了。
spring-boot-starter-validation 和Hibernate Validator的关系
spring-boot-starter-validation
是 Spring Boot 的一个模块,它提供了数据验证的功能,而 Hibernate Validator 是数据验证的一个流行实现。Spring Boot Starter Validation 模块依赖于 Hibernate Validator,并提供了一些方便的自动配置。Hibernate Validator 提供了基于 Bean 校验的 API,它支持 JSR-303 和 JSR-380 注解,这些注解可以被用来对 Java Beans 进行数据校验。
关系简单来说就是:
- Spring Boot Starter Validation 依赖于 Hibernate Validator。
- Hibernate Validator 是一个数据校验的实现,提供了基于注解的数据校验方式。
- Spring Boot Starter Validation 提供了自动配置和启动所需要的依赖。
- Title: 记一次@NotEmpty失效问题
- Author: Wangjie
- Created at : 2024-11-13 19:25:28
- Updated at : 2024-11-19 19:55:08
- Link: https://wj0410.github.io/2024/11/13/记一次@NotEmpty失效问题/
- License: This work is licensed under CC BY-NC-SA 4.0.
Comments