Java中bindingresult的用法是什么

52次阅读
没有评论

共计 1007 个字符,预计需要花费 3 分钟才能阅读完成。

在 Java 中,BindingResult 用于捕获并封装验证表单绑定过程中的错误。它通常与 Spring 框架的表单验证一起使用。

当使用 Spring 提供的表单验证功能时,如果表单验证失败,Spring 会将错误信息绑定到 BindingResult 对象中,以便我们可以在控制器中访问和处理这些错误。

使用 BindingResult 的主要目的是提供一个容器,用于存储验证失败的字段和相应的错误消息。我们可以通过 BindingResult 对象的方法来获取和处理这些错误。

下面是使用 BindingResult 的简单示例:

  1. 在控制器方法中添加 @Validated 注解来启用表单验证:
@PostMapping("/save")
public String saveUser(@Validated UserForm userForm, BindingResult bindingResult) {// ...
}
  1. 在 UserForm 类中添加验证规则:
public class UserForm {@NotEmpty(message = " 用户名不能为空 ")
    private String username;
    
    // getter and setter
}
  1. 在控制器方法中处理错误:
@PostMapping("/save")
public String saveUser(@Validated UserForm userForm, BindingResult bindingResult) {if (bindingResult.hasErrors()) {List<ObjectError> errors = bindingResult.getAllErrors();
        for (ObjectError error : errors) {System.out.println(error.getDefaultMessage());
        }
        return "error";
    }
    // 保存用户 
    return "success";
}

在上述示例中,如果表单验证失败,错误信息将被添加到 BindingResult 对象中。我们可以使用 bindingResult.hasErrors() 方法来检查是否存在错误,如果存在错误,可以使用 bindingResult.getAllErrors() 方法获取所有错误,并进行相应的处理。

需要注意的是,BindingResult 对象必须紧随 @Validated 注解之后声明,否则将无法正常工作。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-12发表,共计1007字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)