Некоторые фреймворки, такие как Spring, имеют простые способы запуска процесса проверки, просто используя аннотации. Это главным образом для того, чтобы нам не приходилось взаимодействовать с программным API проверки.
Давайте теперь пойдем ручным маршрутом и настроим все программно:
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
Чтобы проверить бин, мы должны сначала иметь объект Validator, который создается с использованием ValidatorFactory.
Теперь мы собираемся настроить этого недопустимого пользователя с нулевым значением имени:
User user = new User();
user.setWorking(true);
user.setAboutMe("Its all about me!");
user.setAge(50);
Теперь, когда у нас есть Validator, мы можем проверить наш bean-компонент, передав его методу validate. Любые нарушения ограничений, определенных в объекте User, будут возвращены как Set.
Set<ConstraintViolation<User>> violations = validator.validate(user);
Итерируя нарушения, мы можем получить все сообщения о нарушениях, используя метод getMessage.
for (ConstraintViolation<User> violation : violations) {
log.error(violation.getMessage());
}