Вопрос, который я задаю, может быть очень простым (даже глупым).
Я использовал проверку в приложении spring-hibernate MVC. Я использую ограничения, такие как @NotNull, @Pattern, которые исходят из пакетов javax.validation. Когда я использую ограничения, такие как @Email, они импортируются из org.hibernate.validator.constraints. В классе валидатора я использую ValidatorFactory и другие классы или интерфейсы (такие как Validation, Validator), все из которых взяты из javax.validation. Я действительно запутался с этим.
Затем я начал углубляться в то, что именно представляют собой пакеты валидатора javax и гибернационного валидатора, и, по-видимому, они являются реализациями JSR303.
Для проверки я использую
ValidatorFactory validatorFactory = Validation.buildDefaultValidatorFactory();
Чтобы еще больше запутать меня, я прочитал еще один способ создания экземпляра ValidatorFactory, который выглядит следующим образом:
ValidatorFactory validatorFactory = Validation.byProvider(HibernateValidator.class).configure().buildValidatorFactory();
и работает нормально!
Пожалуйста, помогите мне лучше понять оба из них.
Спасибо за помощь.