Spring MVC验证器:Validator接口和ValidationUtils类 图片看不了?点击切换HTTP 返回上层
Validator接口
创建自定义 Spring 验证器需要实现 org.springframework.validation.Validator 接口,该接口有两个接口方法:
boolean supports(Class<?> klass)
void validate(Object object,Errors errors)
往 Errors 对象存入错误消息的方法是 reject 或 rejectValue,这两个方法的部分重载方法如下:
void reject(String errorCode)
void reject(String errorCode,String defaultMessage)
void rejectValue(String filed,String errorCode)
void rejectValue(String filed,String errorCode,String defaultMessage)
if(goods.getGprice() > 100 || goods.getGprice() < 0){
errors.rejectValue("gprice","gprice.invalid"); // gprice.invalid为错误代码
}
ValidationUtils 类
org.springframework.validation.ValidationUtils 是一个工具类,该类中有几个方法可以帮助用户判定值是否为空。例如:
if(goods.getGname()==null || goods.getGname().isEmpty()) {
errors.rejectValue("gname","goods.gname.required")
}
if(goods.getGname() == null || goods.getGname().trim().isEmpty()) {
errors.rejectValue("gname","goods.gname.required")
}
//gname为goods对象的属性
ValidationUtils.rejectIfEmptyOrWhitespace(errors,"gname","goods.gname.required");