服务器端数据校验

时间:2022-12-02 10:04:29

服务器端数据校验

 

  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页面显示错误信息