服务器端数据校验
1)利用Spring自带的验证框架
2)利用JSR 303实现
3)JSR 303
Java为Bean数据合法性校验所提供的标准框架
Spring MVC支持JSR 303标准的校验框架
JSR 303通过在Bean属性上标注校验注解指定校验规则,并通过标准的验证接口对Bean进行验证
http://jcp.org/en/jsr/detail?id=303
注意:Spring本身没有提供JSR 303的实现
实现者:Hibernate Validator
4)JSR 303的约束
@Null
@NotNull
@AssertTrue
@AssertFalse
@Min(value)
@Max(value)
@DecimalMin(value)
@DecimalMax(value)
@Size(max, min)
@Digits (integer, fraction)
@Past
@Future
@NotEmpty
@Length(min,max)
5)Hibernate Validator JSR 303实现步骤
第一步:加入jar文件
hibernate-validator-4.3.2.Final.jar
jboss-logging-3.1.0.CR2.jar
validation-api-1.0.0.GA.jar
第二步:POJO
给需要验证的属性增加相应的校验注解
第三步:Controller
使用注解所声明的限制规则来进行数据的校验
修改UserController.java
处理方法addSave()的入参
标注@Valid注解
BindingResult参数
注意:@Valid注解标示的参数后面,必须紧挨着一个BindingResult参数,否则Spring会在校验不通过时直接抛出异常
第四步:View
将验证的错误信息显示在页面中,进行相应的信息提示
修改useradd.jsp
使用<fm:errors/>标签在JSP页面显示错误信息