您的位置:首页 > 编程语言 > Java开发

springMvc 的参数验证 BindingResult result 的使用

2017-11-20 13:39 357 查看
参考文章:

http://blog.csdn.net/yanfeng918/article/details/42618593

http://blog.sina.com.cn/s/blog_6829be5c0101alxh.html 非常详细的一篇讲解 并且值得深入探讨

http://bbs.csdn.net/topics/360254599 简单明了

1.首先导入依赖包bean-validator.jar

2.在实体类上面写一些相关的验证信息:可以搜索更多的一些验证方式,这只是一部分

可以参考:点击打开链接

http://blog.csdn.net/caihaijiang/article/details/7463514

private String username;
private String password;
private String nickname;
private String email;

public User() {
}

@NotEmpty(message="用户名不能为空")
public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

@Size(min=1,max=10,message="密码的长度应该在1和10之间")
public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}

public String getNickname() {
return nickname;
}

public void setNickname(String nickname) {
this.nickname = nickname;
}

@Email(message="邮箱的格式不正确")
public String getEmail() {
return email;
}

public void setEmail(String email) {
this.email = email;
}


3.后台controller处理

@RequestMapping("save")
public String save( @Valid User user,BindingResult result) {
//
if(result.hasErrors()){
List<ObjectError> ls=result.getAllErrors();
for (int i = 0; i < ls.size(); i++) {
System.out.println("error:"+ls.get(i));
}
}
return "adduser";
}


对BindingResult的深入解析:如果在使用接口返回信息的时候,可以直接拿到bindingResult中的错误信息

if(br.hasErrors()) {
//如果有错误直接跳转到add视图
FieldError fieldError= br.getFieldError();
System.out.println(fieldError.getDefaultMessage());

List<FieldError> list = br.getFieldErrors();
for (FieldError fieldError2 : list) {
System.out.println(fieldError2.getDefaultMessage());
}
List<ObjectError> ls=br.getAllErrors();
for (int i = 0; i < ls.size(); i++) {
System.out.println("error:"+ls.get(i).getDefaultMessage());
}
return "user/add";
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring mvc
相关文章推荐