你们好,我是金金金。

场景
- 我正在学习参数校验,启动项目时报错如下,我把代码都贴出来
maven依赖

配置类

依赖版本

控制器代码

postman测试

报错信息

排查
- 看报错信息提示空指针,好像还是提示的源码里面的代码,一时不知咋搞了
- 版本我也试了
- 然后我也打了断点,压根没进入到方法里面就报错了
- 配置
@EnableWebMvc
后,SpringMVC
会默认装配好一个LocalValidatorFactoryBean
,通过在处理方法的入参上标注@Validated
注解即可让SpringMVC
在完成数据绑定后执行数据校验的工作
- 尝试了非常多的方法都还是不行,也百度了很久,搞了我一天的时间。

- 我把这个校验注解去了就没问题,但是没校验啊,,,就是这个注解的问题导致,不知道是不是啥没配置啊,我看教程也是这样啊,后面我又新开了一个小模块测试,发现,,竟然是引错包的问题所导致

造成error的原因
NotNull
注解引入错了包所导致。
解决
NotNull正确的包是:import javax.validation.constraints.NotNull; 下的
- 实体类

- 控制层代码

我们来测试一下


总结
主要是因为导入错包所引发的问题,排查起来相当困难,这也是一个深刻的教训!
- 编写有误还请大佬指正,万分感谢。