可能是因为控制器方法中的BindingResult对象没有正确连接到校验注解实体上。尝试将BindingResult对象与校验注解实体关联起来,例如:
// 控制器方法 @PostMapping("/user") public String addUser(@Valid User user, BindingResult result) { if (result.hasErrors()) { // 处理错误 } // 处理用户添加逻辑 return "success"; }
// User实体类 public class User { @NotEmpty(message = "用户名不能为空") private String username;
// 省略getter和setter方法
}
在以上代码中,BindingResult对象与@Valid注解修饰的校验注解实体User正确关联起来了,这样在控制器方法中就能够正确地使用BindingResult对象的hasErrors()方法来判断校验结果了。