<dependency>
<groupId>org.apache.bval</groupId>
<artifactId>bval-jsr</artifactId>
<version>2.0.2</version>
</dependency>
groovy
implementation 'org.apache.bval:bval-jsr:2.0.2'
import javax.validation.constraints.*;
public class User {
private String username;
private String email;
private int age;
}
import org.apache.bval.jsr303.ApacheValidationProvider;
import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import java.util.Set;
public class Main {
public static void main(String[] args) {
User user = new User();
user.setUsername(null);
user.setEmail("example.com");
user.setAge(16);
Validator validator = Validation.byProvider(ApacheValidationProvider.class)
.configure()
.buildValidatorFactory()
.getValidator();
Set<ConstraintViolation<User>> violations = validator.validate(user);
for (ConstraintViolation<User> violation : violations) {
System.out.println(violation.getPropertyPath() + " " + violation.getMessage());
}
}
}
<?xml version="1.0" encoding="UTF-8"?>
<validation-config
xmlns="http://xmlns.jcp.org/xml/ns/validation/configuration"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/validation/configuration validation-configuration-1.1.xsd"
version="1.1">
</validation-config>