SpringMVC數(shù)據(jù)校驗

SpringMVC數(shù)據(jù)校驗

Validation和JSR 303代碼示例地址

Spring的Validation校驗框架

spring自帶Validation校驗框架,其中重要的接口和類有:

  • Validator接口,有兩個方法supports()和validate()
  • Errors,存放錯誤信息的接口
  • ValidationUtils,校驗工具類
  • LocalValidatorFactoryBean,該類實現(xiàn)了Spring的Validator接口,也實現(xiàn)了JSR 303的Validator接口

JSR 303校驗

JSR 303是java為Bean數(shù)據(jù)合法性校驗所提供的一個標(biāo)準(zhǔn)規(guī)范,叫做Bean Validation。Bean Validation為JavaBean驗證定義了相應(yīng)的元數(shù)據(jù)類型和API。在應(yīng)用程序中,通過在Bean屬性上標(biāo)注類似@NotNull、@Max等標(biāo)準(zhǔn)的注解指定校驗規(guī)則,并通過標(biāo)注的驗證接口對Bean進(jìn)行驗證。Bean Validation是一個可以運行時數(shù)據(jù)驗證框架,在驗證之后驗證的錯誤信息會被立即返回。

需要引入的jar包:

    <dependency>
      <groupId>org.hibernate.validator</groupId>
      <artifactId>hibernate-validator</artifactId>
      <version>6.0.5.Final</version>
    </dependency>
  
    <dependency>
      <groupId>org.hibernate.validator</groupId>
      <artifactId>hibernate-validator-annotation-processor</artifactId>
      <version>6.0.5.Final</version>
    </dependency>
   
    <dependency>
      <groupId>org.hibernate</groupId>
      <artifactId>hibernate-validator-cdi</artifactId>
      <version>6.0.5.Final</version>
    </dependency>
 
    <dependency>
      <groupId>javax.validation</groupId>
      <artifactId>validation-api</artifactId>
      <version>2.0.0.Final</version>
    </dependency>
   
    <dependency>
      <groupId>com.fasterxml</groupId>
      <artifactId>classmate</artifactId>
      <version>1.3.4</version>
    </dependency>

    <dependency>
      <groupId>org.jboss.logging</groupId>
      <artifactId>jboss-logging</artifactId>
      <version>3.3.1.Final</version>
    </dependency>

    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>

    <dependency>
      <groupId>taglibs</groupId>
      <artifactId>standard</artifactId>
      <version>1.1.2</version>
    </dependency>

Validation和JSR 303代碼示例地址

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容