1. 程式人生 > 實用技巧 >手動呼叫hibernate的引數校驗器和springboot引數校驗器

手動呼叫hibernate的引數校驗器和springboot引數校驗器

packagecom.cmb.om; importcom.xx.xx.bean.dto.ApplyRcdSelectDtoX1; importorg.junit.Test; importorg.junit.runner.RunWith; importorg.springframework.beans.factory.annotation.Autowired; importorg.springframework.boot.test.context.SpringBootTest; importorg.springframework.test.context.junit4.SpringRunner;
importjavax.validation.ConstraintViolation; importjavax.validation.Validation; importjavax.validation.Validator; importjavax.validation.ValidatorFactory; importjava.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) publicclassSelfCallValid { @Autowired privateValidator validator; /** * 手動呼叫hibernate校驗器 */ @Test publicvoidtest(){ XXXDto foo =newXXXDto(); 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 publicvoidtestSpringbootValid(){ XXXDto foo =newXXXDto(); 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 publicclassXXXDto{ @NotBlank(message ="taskNo不允許為空") privateString taskNo; }