SpringMVC:数据验证

作者:superzhang 时间:2017-11-29 22:25:46

数据验证在实际应用中非常广泛,例如我们注册个用户信息,填写用户名,提示至少6位......

数据验证是用户输入的数据值进行的业务逻辑有效性验证,而非数据类型的验证,数据类型的验证是否成功是由类型转换器完成的。

数据验证一般分前端验证与服务端验证两种,前端验证一般通过AJAX完成,而服务端验证是通过代码完成验证的。

对于一般性验证,前端就可以,但如果安全性较高,一般前端后端都要有,但绝不会出现只要后端 验证而不要前端验证的情况。

SpringMVC支持JRS303提案,该提案是对象验证提案,验证的是一个对象,而不是一个数据。

该规范的实现者很多,较著名的是Hibernate validator。


一、第一个程序的实现:

需求:表单中姓名、成绩、手机号,要求姓名非空且长度为6-12个字符;成绩,百分制;手机号,非空且符合手机号格式。

1、根据需求设计表单。

2、创建个bean(因为该规范验证的是对象)

3、导入相关jar包:

SpringMVC:数据验证

SpringMVC:数据验证

4、定义验证规则(写bean里):

SpringMVC:数据验证

5、修改处理器:

SpringMVC:数据验证

判断是否验证通过有四种方式:

  • rs.getErrorCount()>0(如果大于0,则表示验证没通过)

  • rs.getErrorCount();

  • List<ObjectError> allErrors=rs.getAllErrors();

int size=allErrors.size();

  • rs.hasErrors();(这个返回是个布尔值)

执行getDefaultMessage是有条件的,就是调用者必须不能为空,为空的话就会报空指针异常,为此我们在上面进行了判断。

6、注册验证器:

SpringMVC:数据验证


二、验证失败信息显示与数据回显:

处理器方法代码在上面已经显示。

SpringMVC:数据验证

分享到:

<< 上一篇:iis下m4a 格式文件添加mime映射 (2017-11-29 22:23)

>> 下一篇:深圳响应式网站建设需要把握的九点 (2017-11-29 22:27)