Bean 验证和 Hibernate 验证器
Hibernate Validator是Bean Validation 1.1规范的参考实现。
例如,检查Maven Repository,您会发现该hibernate-validator
工件确实包含该validation-api
工件作为依赖项。
Bean 验证和 Java EE 7 API
Bean Validation 在javax.validation
包和子包中定义。
Java EE 7 是一个综合规范,除其他规范外,它还包括 Bean Validation 1.1 规范。
这意味着javaee-api
工件包括javax.validation
包和子包。但是,没有提供 Bean 验证的实现作为该工件的依赖项。
另一方面,一些容器,例如 WildFly 和 GlassFish,提供了 Hibernate Validator 依赖项(或任何其他 Bean Validation 实现)以符合 Java EE 7 规范。在这种情况下,如果您想使用来自 Hibernate Validator 的特定内容(即来自org.hibernate.validator
包或子包的内容),则需要添加具有范围的hibernate-validator
依赖项。provided
否则,如果您不使用 Hibernate Validator 中的任何特定内容,则 javaee-api
依赖项应该没问题。