Maven: <dependency> <groupId>org.apache.bval</groupId> <artifactId>bval-jsr</artifactId> <version>2.0.0</version> </dependency> Gradle: groovy implementation 'org.apache.bval:bval-jsr:2.0.0' public class User { @NotNull private String name; // Getters and Setters } @Target({ ElementType.FIELD, ElementType.METHOD }) @Retention(RetentionPolicy.RUNTIME) @Documented @Constraint(validatedBy = UniqueEmailValidator.class) public @interface UniqueEmail { String message() default "Email address must be unique"; Class<?>[] groups() default {}; Class<? extends Payload>[] payload() default {}; } public class UniqueEmailValidator implements ConstraintValidator<UniqueEmail, String> { @Override public boolean isValid(String value, ConstraintValidatorContext context) { } } import org.apache.bval.jsr.ApacheValidatorFactory; public class ValidationExample { public static void main(String[] args) { ApacheValidatorFactory validatorFactory = ApacheValidatorFactory.getDefault(); Validator validator = validatorFactory.getValidator(); User user = new User(); Set<ConstraintViolation<User>> violations = validator.validate(user); if (!violations.isEmpty()) { for (ConstraintViolation<User> violation : violations) { System.out.println(violation.getMessage()); } } } }


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