我们在使用@NotNull注解的时候,一般在实体类的字段上加上@NouNull注解:
然后在controller类中的方法上添加上@Valid的注解(我们还可以给bean后紧跟一个BindingResult,就可以获取到校验的结果信息)
但是在进行测试的时候发现我们添加的注解失效了,原因如下:
springboot 2.3之前的集成在
spring-boot-starter-web
里了,所以不需要额外引入包
springboot 2.3之后需要引入
spring-boot-starter-validation
**
引入如下依赖就行:
**
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
如果在引入上面依赖之后还是不能解决问题的话,再添加依赖(建议使用7.0.1.final及以上版本)
<dependency>
<groupId>org.hibernate.validator</groupId>
<artifactId>hibernate-validator</artifactId>
<version>7.0.1.Final</version>
</dependency>
如果已经引入了hibernate-validator依赖,还是无效,可以尝试在配置文件添加以下参数:
spring.mvc.hiddenmethod.filter.enabled=true
上面这些就应该可以解决这个问题了
实在还不行就降低springboot版本就可以了。
版权归原作者 难掉的头发 所有, 如有侵权,请联系我们删除。