zoukankan      html  css  js  c++  java
  • 手动调用hibernate的参数校验器和springboot参数校验器 验证

    package com.cmb.om;
     
    import com.xx.xx.bean.dto.ApplyRcdSelectDtoX1;
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.test.context.junit4.SpringRunner;
     
    import javax.validation.ConstraintViolation;
    import javax.validation.Validation;
    import javax.validation.Validator;
    import javax.validation.ValidatorFactory;
    import java.util.Set;
     
    /**
     * @Title SelfCallValid
     * @Package SelfCallValid
     * @Description
     * @Date 2020/6/8 15:51
     * @Version 1.0
     * @Copyright IT802482
     */
    @RunWith(SpringRunner.class)
    @SpringBootTest(classes = SpringBootApp.class)
    public class SelfCallValid {
     
     
        @Autowired
        private Validator validator;
     
        /**
         * 手动调用hibernate校验器
         */
        @Test
        public void test(){
     
            XXXDto foo = new XXXDto();
            ValidatorFactory vf = Validation.buildDefaultValidatorFactory();
            Validator validator = vf.getValidator();
            Set<ConstraintViolation<XXXDto>> set = validator.validate(foo);
            if(set.size()>0){
                System.out.println("校验不通过");
            }else{
                System.out.println("校验通过");
            }
            for (ConstraintViolation<XXXDto> constraintViolation : set) {
                System.out.println("原因:"+constraintViolation.getMessage());
            }
        }
     
        /**
         * 手动调用springboot封装后的校验器
         */
        @Test
        public void testSpringbootValid(){
            XXXDto foo = new XXXDto();
            Set<ConstraintViolation<XXXDto>> set = validator.validate(foo);
            if(set.size()>0){
                System.out.println("校验不通过");
            }else{
                System.out.println("校验通过");
            }
            for (ConstraintViolation<XXXDto> constraintViolation : set) {
                System.out.println("原因:"+constraintViolation.getMessage());
            }
        }
    }

      dto:

    1
    2
    3
    4
    5
    @Data
    public class XXXDto{
        @NotBlank(message = "taskNo不允许为空")
        private String taskNo;
    }
  • 相关阅读:
    redis 3 通用指令
    查看表索引
    truncate的用法
    Java(0)_ 安装jdk
    Java(9)_ 集合(3)
    Java(10)_File&递归&字节流
    Java(8)_ 集合(2)
    Appium+python的单元测试框架unittest(3)——discover
    Appium+python的单元测试框架unittest(2)——fixtures
    爬楼梯
  • 原文地址:https://www.cnblogs.com/xiami2046/p/13910805.html
Copyright © 2011-2022 走看看