1.SpringMVC 3.x 自带校验器 Validatior ()
import org.springframework.validation.Errors;
import org.springframework.validation.ValidationUtils;
import org.springframework.validation.Validator;
public class UserValidator implements Validator {
public boolean supports(Class> clazz) {
// TODO Auto-generated method stub
return User.class.equals(clazz);
}
public void validate(Object obj, Errors errors) {
// TODO Auto-generated method stub
ValidationUtils.rejectIfEmpty(errors, "username", null, "Username is empty.");
User user = (User) obj;
if (null == user.getPassword() || "".equals(user.getPassword()))
errors.rejectValue("password", null, "Password is empty.");
}
}
总结:引入简单,使用springMvc为框架,但是此验证器功能及其弱,要自己实现Validator自己实现校验方法的扩展。
2.JSR 380:Bean Validation 2.0
数据验证方面,采用的实现为Hibernate Validator 6。
总结:单自带校验,代码压缩包就有13.5MB,感觉此还是较重。
3.Apache BVal
注解
Constraint 详细信息
@Null 被注释的元素必须为null
@NotNull 被注释的元素必须不为null
@AssertTrue 被注释的元素必须为true
@AssertFalse 被注释的元素必须为false
@Min(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@Max(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最大值
@DecimalMin(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@DecimalMax(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@Size(max,min) 被注释的元素的大小必须在指定的范围内
@Digits(integer,fraction) 被注释的元素必须是一个数字,其值必须在可接受的范围内
@Past 被注释的元素必须是一个过去的日期
@Future 被注释的元素必须是一个将来的日期
@Pattern(value) 被注释的元素必须符合指定的正则表达式
@Email 被注释的元素必须是邮箱地址
@FutureOrPresent 被注释的元素必须是一个将来(含当前)的日期
@PastOrPresent 被注释的元素必须是一个过去(含当前)的日期
@Negative 被注释的元素必须是负数
@NegativeOrZero 被注释的元素必须是负数或者0
@Positive 被注释的元素必须是正数
@PositiveOrZero 被注释的元素必须是正数或者0
@NotBlank 被注释的元素必须不能是空串或者只含空格的字符串
@NotEmpty 被注释的元素必须不能是空串
参考链接:
BeanValidation2.0(JSR 380)的简单使用方法_hjnjmjkj的博客-CSDN博客
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)