java - Spring 验证与 Hibernate 验证

我现在在两者之间感到困惑。我知道 Hibernate Validator 6 是 Bean Validation 2.0 规范的引用实现。它支持分组, 错误消息的国际化、自定义方法验证等。 问题是 Spring 5 是否支持这些功能,还是我只剩下 Hibernate Validator 6?

为什么我应该在我的 Spring Boot 项目中使用 Hibernate Validator 而不是提供的 Spring Validation?我的公司需要有理由使用任何第三方库。

网上所有的引用例子都建议使用Hibernate Validator,在Spring验证上找不到太多,请指教或指向其他链接。

最佳答案

根据 Spring Validation documentation

With Bean Validation, a single javax.validation.Validator instance typically validates all model objects that declare validation constraints. To configure such a JSR-303 backed Validator with Spring MVC, simply add a Bean Validation provider, such as Hibernate Validator, to your classpath

您可以通过创建具有 spring-boot-starter-web 依赖项的示例 spring-boot 项目来验证这一点。它实际上将 hibernate-validator 依赖项添加到您的类路径中

这里有几个 Spring 教程中的 jsr-303 链接:

  1. https://howtodoinjava.com/spring/spring-mvc/spring-bean-validation-example-with-jsr-303-annotations/

  2. https://www.mkyong.com/spring-mvc/spring-3-mvc-and-jsr303-valid-example/

https://stackoverflow.com/questions/48200444/

相关文章:

java - 使用具有不同 AuthenticationProviders 的多个 WebSecur

spring - jar 如何在使用它的 Web 应用程序中传播漏洞?

java - spring mvc 表单 :select tag

spring - 如何在运行时将新用户添加到 Spring Security

java - 在 Spring Hibernate java 项目中使用 "Envers"审计表

java - 使用 Spring JavaConfig 和 @Autowired 注入(inject

java - Spring MVC : Resolving the view based on Us

java - Spring WS : How to get and save XSD validat

java - Spring Security 3 - 总是返回错误 302

java - Spring Integration Kafka Consumer Listener