亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

javax.validation.constraints注解使用

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

javax.validation.constraints注解

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

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

開(kāi)發(fā)者可以通過(guò)在對(duì)象的屬性上添加這些注解,來(lái)定義相應(yīng)的驗(yàn)證規(guī)則。

常用的注解

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

  • 適用于任何類(lèi)型的屬性或方法參數(shù)。
  • 不能用于基本數(shù)據(jù)類(lèi)型,因?yàn)樗鼈儾唤邮躰ull值。

@NotEmpty

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

@NotBlank

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

@Min

  • 用于標(biāo)記數(shù)值類(lèi)型的屬性或方法參數(shù)的最小值。
  • 適用于byte、short、int、long和對(duì)應(yīng)的包裝類(lèi)類(lèi)型的屬性或方法參數(shù)。

@Max

  • 用于標(biāo)記數(shù)值類(lèi)型的屬性或方法參數(shù)的最大值。
  • 適用于byte、short、int、long和對(duì)應(yīng)的包裝類(lèi)類(lèi)型的屬性或方法參數(shù)。

@Size

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

@Pattern

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

@Email

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

其他注解

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

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

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

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

@NotBlank

@NotBlank 用于驗(yàn)證一個(gè)字符串是否為非空,它會(huì)去除字符串兩端的空格后再判斷是否為空。

@NotBlank 可以用在 String 類(lèi)型的字段上。

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

示例:

public class User { @NotBlank private String username; }

@NotEmpty

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

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

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

示例:

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

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

心得

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

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

總結(jié)

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

相關(guān)文章

  • 一文看懂 Spring Aware 接口功能

    一文看懂 Spring Aware 接口功能

    Aware接口是一個(gè)空接口,可以理解為是一個(gè)標(biāo)記接口,方便在一個(gè)統(tǒng)一的方法(AbstractAutowireCapableBeanFactory.invokeAwareMethods)中進(jìn)行判斷處理賦值,在子接口寫(xiě)出各自的set方法,這篇文章主要介紹了一文看懂 Spring Aware 接口功能,需要的朋友可以參考下
    2024-12-12
  • SpringBoot微信消息接口配置詳解

    SpringBoot微信消息接口配置詳解

    這篇文章主要介紹了SpringBoot 微信消息接口配置詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-06-06
  • 基于 SASL/SCRAM 讓 Kafka 實(shí)現(xiàn)動(dòng)態(tài)授權(quán)認(rèn)證的方法

    基于 SASL/SCRAM 讓 Kafka 實(shí)現(xiàn)動(dòng)態(tài)授權(quán)認(rèn)證的方法

    在大數(shù)據(jù)處理和分析中?Apache Kafka?已經(jīng)成為了一個(gè)核心組件,本文將從零開(kāi)始部署?ZooKeeper?和?Kafka?并通過(guò)配置?SASL/SCRAM?和?ACL(訪問(wèn)控制列表)來(lái)增強(qiáng)?Kafka?的安全性,需要的朋友可以參考下
    2024-07-07
  • java能寫(xiě)爬蟲(chóng)程序嗎

    java能寫(xiě)爬蟲(chóng)程序嗎

    在本篇文章里小編給大家整理的是一篇關(guān)于java是否能寫(xiě)爬蟲(chóng)程序的一篇文章,對(duì)此有興趣的朋友們可以學(xué)習(xí)下。
    2021-01-01
  • java 讀取文件路徑空格、

    java 讀取文件路徑空格、"+"和中文的處理方法

    今天小編就為大家分享一篇java 讀取文件路徑空格、"+"和中文的處理方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • Jmeter分布式壓力測(cè)試實(shí)現(xiàn)過(guò)程詳解

    Jmeter分布式壓力測(cè)試實(shí)現(xiàn)過(guò)程詳解

    這篇文章主要介紹了Jmeter分布式壓力測(cè)試實(shí)現(xiàn)過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • JFreeChart實(shí)現(xiàn)實(shí)時(shí)曲線圖

    JFreeChart實(shí)現(xiàn)實(shí)時(shí)曲線圖

    這篇文章主要為大家詳細(xì)介紹了JFreeChart實(shí)現(xiàn)實(shí)時(shí)曲線圖的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • java自定義注解驗(yàn)證手機(jī)格式的實(shí)現(xiàn)示例

    java自定義注解驗(yàn)證手機(jī)格式的實(shí)現(xiàn)示例

    這篇文章主要介紹了java自定義注解驗(yàn)證手機(jī)格式的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 淺析Java關(guān)鍵詞synchronized的使用

    淺析Java關(guān)鍵詞synchronized的使用

    Synchronized是java虛擬機(jī)為線程安全而引入的。這篇文章主要為大家介紹一下Java關(guān)鍵詞synchronized的使用與原理,需要的可以參考一下
    2022-12-12
  • Spring AOP + 注解實(shí)現(xiàn)統(tǒng)一注解功能

    Spring AOP + 注解實(shí)現(xiàn)統(tǒng)一注解功能

    本文我們通過(guò)Spring AOP和Java的自定義注解來(lái)實(shí)現(xiàn)日志的插入功能,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友一起看看吧
    2018-05-05

最新評(píng)論