数据验证概念及JSR303验证
JSR303验证
@NULL
@NOTNULL
@MAX
@PAST
@Future
要在spring中使用必须导入包validation-api.jar
JSR303验证的使用流程
1)要在spring中使用必须导入包validation-api.jar
2)在POJO类中需要验证的属性上加上JSR303验证
@Past
private Date birth;
3)需要springmvc.xml中需要配置LocalValidatorFactoryBean,并且需要在 mvc:annotation-diver 中加入validator=“Validator”
<mvc:annotation-diver validator="Validator" conversionService="ConversionService"></mvc:annotation-diver >
<bean id="Validator" class="LocalValidatorFactoryBean"></bean>
4)在handler类中需要验证的入参加入@valid
public String testFormat(@valid User user)
获取错误BindingResult:包含了许多错误消息,对象放置在请求范围中
在handler 类中加入
public String testFormat(@valid User user,BindingResult result){
if (result.getErroCount()>0);
//绑定的错误数量
List <ObjectError> list=result.getAllErrors();
for (ObjectError error:list)
{ System.out.println(error.getDefaultMessage());}
}
注:小技巧:以下代码可以取消
<bean id="Validator" class="LocalValidatorFactoryBean"></bean>