今天在看Spring实战第五章校验表单的时候,我出现了使用@Valid无效的情况。
我百度了很多答案,确保引入的是javax.validation.constraints.NotNull,也知道了@Valid后面要跟着BindingResult result或者Errors errors。可是还是errors.hasErrors()始终为false。
于是我从头看了一遍那个小节,发现我漏过了一个细节:在SpringMVC中要使用Java校验API的话,要保证在类路径下包含这个Java API的实现,比如Hibernate Validator。
于是,我在maven项目中多加一行引入了jar包果然就成功了。如果不是maven项目的话,搜这个包名去maven网站下载导入就行了。
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.1.1.Final</version>
</dependency>

本文详细介绍了在Spring MVC中遇到@Valid注解失效的问题及解决方案。作者在使用Spring实战第五章校验表单时,发现@Valid注解无法正常工作,即使引入了NotNull约束并正确使用了BindingResult。最终通过引入HibernateValidator库解决了问题。
577

被折叠的 条评论
为什么被折叠?



