Valid和 Validated的區別及使用

2021-10-01 21:05:55 字數 2605 閱讀 1395

1、用途

以註解的方式實現介面引數校驗

2、優點

統一介面校驗方法,並且可以指定相應的異常資訊,避免手動寫if else判斷引數是否合法

3、使用方法

配置相應引數的註解,並在controller或方法開啟校驗

3.1 @valid的使用

用於校驗實體類引數,用於方法入口

3.2 @validated的使用

用於校驗除實體類的介面引數,用於controller上

成功登入:

登入失敗:

成功退出登入:

退出失敗:

4、常用的引數校驗註解:

@notnull 限制必須不為null

@assertfalse 限制必須為false

@asserttrue 限制必須為true

@past 限制必須是乙個過去的日期

@pattern(value) 限制必須符合指定的正規表示式

@size(max,min) 限制字元長度必須在min到max之間

@past 驗證註解的元素值(日期型別)比當前時間早

@notempty 驗證註解的元素值不為null且不為空(字串長度不為0、集合大小不為0)

@notblank 驗證註解的元素值不為空(不為null、去除首位空格後長度為0),不同於@notempty,@notblank只應用於字串且在比較時會去除字串的空格

@email 驗證註解的元素值是email,也可以通過正規表示式和flag指定自定義的email格式

@pattern(regexp = 「」) 正規表示式校驗引數

@range(min = 0, max = 10) / max / @min 校驗最大值/最小值,引數型別為整形(pageno, pagesize)

1、用途

以註解的方式實現介面引數校驗

2、優點

統一介面校驗方法,並且可以指定相應的異常資訊,避免手動寫if else判斷引數是否合法

3、使用方法

配置相應引數的註解,並在controller或方法開啟校驗

3.1 @valid的使用

用於校驗實體類引數,用於方法入口

3.2 @validated的使用

用於校驗除實體類的介面引數,用於controller上

成功登入:

登入失敗:

成功退出登入:

退出失敗:

4、常用的引數校驗註解:

@notnull 限制必須不為null

@assertfalse 限制必須為false

@asserttrue 限制必須為true

@past 限制必須是乙個過去的日期

@pattern(value) 限制必須符合指定的正規表示式

@size(max,min) 限制字元長度必須在min到max之間

@past 驗證註解的元素值(日期型別)比當前時間早

@notempty 驗證註解的元素值不為null且不為空(字串長度不為0、集合大小不為0)

@notblank 驗證註解的元素值不為空(不為null、去除首位空格後長度為0),不同於@notempty,@notblank只應用於字串且在比較時會去除字串的空格

@email 驗證註解的元素值是email,也可以通過正規表示式和flag指定自定義的email格式

@pattern(regexp = 「」) 正規表示式校驗引數

@range(min = 0, max = 10) / max / @min 校驗最大值/最小值,引數型別為整形(pageno, pagesize)

Valid和 Validated的使用技巧與知識

1 用途 以註解的方式實現介面引數校驗 2 優點 統一介面校驗方法,並且可以指定相應的異常資訊,避免手動寫if else判斷引數是否合法 3 使用方法 配置相應引數的註解,並在controller或方法開啟校驗 3.1 valid的使用 用於校驗實體類引數,用於方法入口 3.2 validated的...

Valid和 Validated的區別及使用

1 用途 以註解的方式實現介面引數校驗 2 優點 統一介面校驗方法,並且可以指定相應的異常資訊,避免手動寫if else判斷引數是否合法 3 使用方法 配置相應引數的註解,並在controller或方法開啟校驗 3.1 valid的使用 用於校驗實體類引數,用於方法入口 3.2 validated的...

Validated註解校驗

最近新專案是使用hibernate validator做表單驗證,遇到有id在更新時不能為空,而在新增時需要為空的情況,所有使用了group屬性來指定在什麼情況下使用哪個驗證規則,而在controller方法只使用 validated 來分組驗證 public apiresponsecreateus...