天天看点

SpringMvc hibernate validator

validator(验证器)是作用于object级的。规范文档有两个,一个是jsr303 “bean validator”和jsr349 “bean validator 1.1”,它们都定义了一整套api。通过标注给对象的属性,来添加约束。也就是进行验证的规则。这两个约束可以从以下两个链接下载:

<a href="https://jcp.org/en/jsr/detail?id=303">jsr303</a>

<a href="https://jcp.org/en/jsr/detail?id=349">jsr349</a>

但是jsr只是一个规范文档,我们需要的是它的实现。我这里用的是hibernate validator,它实现了jsr303和jsr349

jsr303不需要编写验证器类,只需要利用jsr303的标注类型指定约束

这里copy了一份jsr303的约束表

springmvc跟 hibernate validator整合十分简单

1、 在springmvc配置文件中有这一句

2、 把hibernate validator的jar包添加到classpath路径下,如果项目部署在tomcat上,那/web-inf/lib中要有这个jar包

3、 在需要验证的object添加@valid,在具体需要约束的属性上面添加约束

4、 如果需要覆盖验证器的错误信息,只需在属性文件中添加property键

形式为:constraint.object.property=需要显示的错误信息

实例:

SpringMvc hibernate validator

验证失败网页上会显示验证失败的消息