SpringMVC Validator验证示例验证示例
SpringMVC服务器验证一种是有两种方式,一种是基于Validator接口,一种是使用Annotaion JSR-303标准的验
证,本篇文章主要介绍,有兴趣的可以了解一下。
SpringMVC服务器验证一种是有两种方式,一种是基于Validator接口,一种是使用Annotaion JSR-303标准的验证,下面主要是学
习这两种,工作中推荐后者,方便很多
一一.基于基于Validator接口的验证接口的验证.
首先创建User实例,并加入几个属性
public class User {
private String username;
private String password;
private String nickname;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
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;
}
@Override
public String toString() {
return "username--"+username+"password--"+password+"nickname--"+nickname;
}
}
接着创建用于校检的类UserValidator,让其实现Validator,覆盖其中的两个方法
import main.java.model.User;
import org.springframework.validation.Errors;
import org.springframework.validation.Validator;
public class UserValidator implements Validator {
@Override
public boolean supports(Class<?> aClass) {
//判断是否是要校验的类,这里是User
return User.class.equals(aClass);
}
@Override
public void validate(Object o, Errors errors) {
User u = (User) o;
if (null == u.getPassword() || "".equals(u.getPassword())){
//此方法可以加四个参数,第一个表单域field,
//区分是哪个表单出错,第二个errorCode错误码,
//第三个制定了资源文件中占位符,第四个具体错误返回信息
//简写版可以把2,3参数去掉
errors.rejectValue("password",null,null,"password is null");
}
}
}
上面的类只实现了对密码判断是否为空,为空则注册这一错误信息,也就是”password is null”,接下来要实现控制器,控制器要做的