欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javax.validation.constraints注解使用

 更新時間:2024年07月03日 16:40:46   作者:霽月清風與誰同  
這篇文章主要介紹了javax.validation.constraints注解使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

javax.validation.constraints注解

javax.validation.constraints是Java Validation API中的一個包,它提供了一組注解,用于在Java代碼中進行數(shù)據(jù)校驗和驗證。

該包中定義了多個注解,用于標記屬性或方法參數(shù)的驗證規(guī)則。

開發(fā)者可以通過在對象的屬性上添加這些注解,來定義相應的驗證規(guī)則。

常用的注解

@NotNull:用于標記屬性或方法參數(shù)不能為null。

  • 適用于任何類型的屬性或方法參數(shù)。
  • 不能用于基本數(shù)據(jù)類型,因為它們不接受null值。

@NotEmpty

  • 用于標記字符串、集合、Map等類型的屬性或方法參數(shù)不能為null且不能為空。
  • 適用于String、Collection、Map和數(shù)組類型的屬性或方法參數(shù)。

@NotBlank

  • 用于標記字符串類型的屬性或方法參數(shù)不能為null且包含至少一個非空格字符。
  • 適用于String類型的屬性或方法參數(shù)。

@Min

  • 用于標記數(shù)值類型的屬性或方法參數(shù)的最小值。
  • 適用于byte、short、int、long和對應的包裝類類型的屬性或方法參數(shù)。

@Max

  • 用于標記數(shù)值類型的屬性或方法參數(shù)的最大值。
  • 適用于byte、short、int、long和對應的包裝類類型的屬性或方法參數(shù)。

@Size

  • 用于標記字符串、集合、Map等類型的屬性或方法參數(shù)的大小范圍。
  • 可以用于String、Collection、Map和數(shù)組類型的屬性或方法參數(shù)。
  • 必須指定大小范圍,例如@Size(min=2, max=10)。

@Pattern

  • 用于標記字符串類型的屬性或方法參數(shù)的正則表達式驗證規(guī)則。
  • 適用于String類型的屬性或方法參數(shù)。
  • 必須指定正則表達式,例如@Pattern(regexp=“^[a-zA-Z0-9]+$”)。

@Email

  • 用于標記字符串類型的屬性或方法參數(shù)必須符合電子郵件地址的格式。
  • 適用于String類型的屬性或方法參數(shù)。
  • 驗證字符串是否符合電子郵件地址的格式。

其他注解

  • @Past:用于驗證日期或時間類型的屬性或方法參數(shù)必須在當前時間之前。
  • @Future:用于驗證日期或時間類型的屬性或方法參數(shù)必須在當前時間之后。
  • @URL:用于驗證字符串類型的屬性或方法參數(shù)必須符合URL的格式。
  • @IP:用于驗證字符串類型的屬性或方法參數(shù)必須符合IP地址的格式。

這些注解僅提供了基本的驗證規(guī)則,可以根據(jù)實際需求進行組合和自定義注解以滿足特定的驗證需求。此外,還可以使用繼承和組合注解來擴展驗證規(guī)則

javax.validation.constraints中@NotBlank和@NotEmpty的區(qū)別

在Java的javax.validation.constraints包中,@NotBlank和@NotEmpty是用于驗證屬性值非空的注解,它們之間有一些區(qū)別。

@NotBlank

@NotBlank 用于驗證一個字符串是否為非空,它會去除字符串兩端的空格后再判斷是否為空。

@NotBlank 可以用在 String 類型的字段上。

例如,@NotBlank 用在一個 String 類型的字段上,如果該字段為 null、空字符串或只包含空格,都會觸發(fā)驗證失敗。

示例:

public class User { @NotBlank private String username; }

@NotEmpty

@NotEmpty 用于驗證一個集合(Collection)、Map、數(shù)組或字符串是否非空,它不會去除字符串兩端的空格,而是直接判斷是否為空。

@NotEmpty 可以用在 Collection、Map、數(shù)組和 String 類型的字段上。

例如,@NotEmpty 用在一個集合類型的字段上,如list 或 JSONArray,如果該集合為空,會觸發(fā)驗證失敗。

示例:

public class User { @NotEmpty private List<String> phoneNumbers; }

    @ApiModelProperty("結(jié)束日期(包含)")
    @NotNull
    private Date endDate;
 
    @ApiModelProperty("任務生成周天(1,2,3,4,5,6,7)")
    @NotNull
    private String weekDay;
 
    @ApiModelProperty("巡檢當天時間班次")
    @NotEmpty
    private JSONArray period;

心得

  • @NotBlank 主要用于驗證字符串類型的字段是否非空,會去除兩端空格后再進行判斷。
  • @NotEmpty 用于驗證集合、Map、數(shù)組或字符串類型的字段是否非空,不會去除空格,直接判斷是否為空。

根據(jù)具體的需求,你可以選擇使用 @NotBlank 或 @NotEmpty 進行屬性非空的驗證。

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • javaSE中異常如何處理舉例詳解

    javaSE中異常如何處理舉例詳解

    程序運行過程中發(fā)生了不正常的情況,這種不正常的情況叫做異常,下面這篇文章主要給大家介紹了關于javaSE中異常如何處理的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-01-01
  • Java內(nèi)省實例解析

    Java內(nèi)省實例解析

    這篇文章主要介紹了Java內(nèi)省實例解析,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • spring boot加載資源路徑配置和classpath問題解決

    spring boot加載資源路徑配置和classpath問題解決

    這篇文章主要介紹了spring boot加載資源路徑配置和classpath問題解決,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • 2個java希爾排序示例

    2個java希爾排序示例

    java希爾排序示例,希爾排序是插入排序的一種類型,也可以用一個形象的叫法縮小增量法,需要的朋友可以參考下
    2014-05-05
  • Java之Jackson使用案例詳解

    Java之Jackson使用案例詳解

    這篇文章主要介紹了Java之Jackson使用案例詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • java制作android 日歷代碼分享

    java制作android 日歷代碼分享

    本文給大家分享的是一段使用java制作Android日歷的代碼,非常簡單實用,實現(xiàn)了讀取日歷事件、插入事件、編輯日歷事件、查看日歷等功能,有需要的小伙伴參考下
    2015-03-03
  • Java中使用MyBatis-Plus操作數(shù)據(jù)庫的實例

    Java中使用MyBatis-Plus操作數(shù)據(jù)庫的實例

    本文主要介紹了Java中使用MyBatis-Plus操作數(shù)據(jù)庫的實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-02-02
  • SpringBoot注入配置文件的3種方法詳解

    SpringBoot注入配置文件的3種方法詳解

    這篇文章主要介紹了SpringBoot注入配置文件的3種方法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10
  • java中@EnableAutoConfiguration注解使用

    java中@EnableAutoConfiguration注解使用

    在Spring Boot框架中,@EnableAutoConfiguration是一種非常重要的注解,本文就來介紹一下java中@EnableAutoConfiguration注解使用,感興趣的可以了解一下
    2023-11-11
  • spring設置定時任務方式(@Scheduled)

    spring設置定時任務方式(@Scheduled)

    這篇文章主要介紹了spring設置定時任務方式(@Scheduled),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04

最新評論