bindingResult无法捕获校验错误
错误复现
原工程代码,RegisterForm对象设置了校验规则

预期的返回结果
{
"code": 4,
"msg": "表单错误",
"data": null
}
实际执行结果

并且控制台打出了异常堆栈,而且记录的log4j日志也没有显示

原因
经过查阅资料,得到原因
@Valid 和 BindingResult 是一一对应的,如果有多个@Valid,那么每个@Valid后面跟着的BindingResult就是这个@Valid的验证结果,顺序不能乱
解决
故将BindingResult跟在RegisterForm后面即可
public ResultVO doRegister(@Valid RegisterForm registerForm, BindingResult bindingResult, HttpServletRequest request) throws Exception{
再次执行得到预期返回值

控制台也打出预期的日志,并没有显示异常
