public class User { @ValdrConstraint(name = "NotEmpty") private String username; private int age; // getters and setters } public class NotEmptyValidator implements ValdrConstraintValidator<NotEmpty, String> { @Override public void initialize(NotEmpty constraintAnnotation) { } @Override public boolean isValid(String value) { return value != null && !value.isEmpty(); } } public class MinValidator implements ValdrConstraintValidator<Min, Integer> { private int minValue; @Override public void initialize(Min constraintAnnotation) { minValue = Integer.parseInt(constraintAnnotation.value()); } @Override public boolean isValid(Integer value) { return value >= minValue; } } @Configuration public class ValdrConfig implements ValidatorConfigurer { @Override public void configureValidations(ValdrConstraintValidatorRegistry registry) { registry.addConstraintValidators(NotEmpty.class, new NotEmptyValidator()); registry.addConstraintValidators(Min.class, new MinValidator()); } } public class UserValidationTest { private Validator validator; @BeforeEach public void setUp() { validator = Valdr.createValidator(); } @Test public void testUserValidation() { User user = new User(); user.setUsername(""); user.setAge(16); Set<ConstraintViolation<User>> violations = validator.validate(user); assertEquals(2, violations.size()); } }


上一篇:
下一篇:
切换中文