<dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifactId> <version>2.0.1.Final</version> </dependency> import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import javax.validation.constraints.Max; import javax.validation.constraints.Min; public class User { private String username; private Integer age; } import javax.validation.ConstraintValidator; import javax.validation.ConstraintValidatorContext; public class UserValidator implements ConstraintValidator<ValidUser, User> { @Override public void initialize(ValidUser constraintAnnotation) { } @Override public boolean isValid(User user, ConstraintValidatorContext context) { return user.getUsername() != null && user.getAge() >= 18 && user.getAge() <= 65; } } import javax.validation.Constraint; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Constraint(validatedBy = UserValidator.class) public @interface ValidUser { Class<?>[] groups() default {}; Class<? extends Payload>[] payload() default {}; } import javax.validation.Validation; import javax.validation.Validator; import javax.validation.ValidatorFactory; public class ValidationExample { public static void main(String[] args) { ValidatorFactory factory = Validation.buildDefaultValidatorFactory(); Validator validator = factory.getValidator(); User user = new User(); user.setAge(20); Set<ConstraintViolation<User>> violations = validator.validate(user); for (ConstraintViolation<User> violation : violations) { System.out.println(violation.getMessage()); } } }


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