SpringMVC使用JSR303实现验证器

SpingMVC应用程序中经常使用两种验证器,一种是SpringMVC验证器,需要编写具体的Validator类实现Validator接口。另一种是使用JSR303验证器,通过注解的方式。这里主要介绍如何使用已经实现JSR303规范的Hibernate Validator来实现验证功能。

1. 首先导入jar包到WebContent文件夹下的lib文件夹下,导入的jar包有:

SpringMVC使用JSR303实现验证器

2.给Bean需要验证的属性加上注解

SpringMVC使用JSR303实现验证器

3.编写相应的@RequestMapping方法

SpringMVC使用JSR303实现验证器

如图,在方法的入参,给books加上@Valid注解,注意这里的bean的名称一定是pojo类首字母的小写的名称。另外,BindingResult对象一定要和bean对象相邻。bingResult.getFieldErrors()用于返回一个存放所有错误的List集合。使用for循环可以在控制台打印所有错误信息。

4.当存在错误时,在表单输入界面输出提示信息。

SpringMVC使用JSR303实现验证器

使用<form:errors path=" ">标签,其中path是指产生错误的字段。

5.springmvc-servlet.xml

在这个配置文件中要写上一下内容,开启spring的Valid功能

SpringMVC使用JSR303实现验证器

 

 

 

下面进行测试:

不输入Book_Name和Author,

SpringMVC使用JSR303实现验证器

点击Submit

SpringMVC使用JSR303实现验证器

显示错误信息,错误信息可以自定义。