hibernate注解验证

hibernate注解验证:


J2EE中的注解验证


@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(regex=,flag=)                被注释的元素必须符合指定的正则表达式 


Hibernate   Validator  加入的验证


@NotBlank(message =)   验证字符串非null,且长度必须大于0 

  

@Email   被注释的元素必须是电子邮箱地址   


@Length(min=,max=)   被注释的字符串的大小必须在指定的范围内   


@NotEmpty   被注释的字符串的必须非空   


@Range(min=,max=,message=)  被注释的元素必须在合适的范围内



以上注解验证如果验证失败怎么那个验证错误呢?

***拿到验证的信息的验证器

public Validator getValidator() {

		Configuration<?> config = Validation.byDefaultProvider().configure();

		return config.buildValidatorFactory().getValidator();

	}

*****验证model,VatUse 要验证的model

        Set<ConstraintViolation<VatUse>> violations = getValidator()
                .validate(vatUse);

如果violation集合不为空那么它就有验证不通过的,

 // 如果验证返回结果 大于零,说明有未通过验证项
        if (violations.size() > 0 || violations==null) {
            // 设置返回结果状态为:失败
            ajaxDoneResult.setStatusCode(AjaxDoneResult.StatusCodeEnum.FAILURE);
            StringBuffer stringBuffer = new StringBuffer();
            // 迭代生成错误信息
            for (ConstraintViolation<VatUse> constraintViolation : violations) {
                stringBuffer.append(constraintViolation.getMessage());
                stringBuffer.append("<br />");
            }
            return <span style="font-family: Arial, Helvetica, sans-serif;">stringBuffer.toString() </span><span style="font-family: Arial, Helvetica, sans-serif;">;</span>
        }


还有一种验证方式:就是在@Size(max=, min= ,message=,group=XXX.class)组验证的方式


验证的时候指定是组验证,拿到验证信息的时候就是:


问号就是组验证的类

        Set<ConstraintViolation<?>> violations = getValidator()
                .validate(vatUse);

springmvc对model验证的时候,用的是hibernate的验证方式...


   




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值