Java Validation Api使用方法例項解析
阿新 • • 發佈:2020-09-08
在我們應用程式的業務邏輯中,經常會碰到引數校驗的情況,手動的在程式碼層上面進行校驗就會帶來很不好的體驗,閱讀、維護的成本會大大增加,造成冗餘。因此有了這個JSR 303。
Bean Validation為JavaBean提供了相應的API來給我們做引數的驗證。通過Bean Validation比如@NotNull @Pattern等方法來對我們欄位的值做進一步的教研。
Bean Validation是一個執行時框架,在驗證之後錯誤資訊會直接返回。
依賴:
<!--新增依賴--> <dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifactId> <version>2.0.1.Final</version> </dependency>
注意: SpringBoot2 專案web元件已經內建了這個依賴了。
版本提供依賴:
依賴註釋:
註解 | 用途 |
---|---|
AssertFalse | 用於boolean欄位,該欄位的值只能為false |
AssertTrue | 用於boolean欄位,該欄位只能為true |
DecimalMax(value) | 被註釋的元素必須是一個數字,只能大於或等於該值 |
DecimalMin(value) | 被註釋的元素必須是一個數字,只能小於或等於該值 |
Digits(integer,fraction) | 檢查是否是一種數字的(整數,小數)的位數 |
被註釋的元素必須是電子郵箱地址 | |
Future | 檢查該欄位的日期是否是屬於將來的日期 |
FutureOrPresent | 判斷日期是否是將來或現在日期 |
Max(value) | 該欄位的值只能小於或等於該值 |
Min(value) | 該欄位的值只能大於或等於該值 |
Negative | 判斷負數 |
NegativeOrZero | 判斷負數或0 |
NotBlank | 只能用於字串不為null,並且字串trim()以後length要大於0 |
NotEmpty | 集合物件的元素不為0,即集合不為空,也可以用於字串不為null |
NotNull | 不能為null |
Null | 必須為 null |
Past | 檢查該欄位的日期是在過去 |
PastOrPresent | 判斷日期是否是過去或現在日期 |
Pattern(value) | 被註釋的元素必須符合指定的正則表示式 |
Positive | 判斷正數 |
PositiveOrZero | 判斷正數或0 |
Size(max,min) | 檢查該欄位的size是否在min和max之間,可以是字串、陣列、集合、Map等 |
Length(max,min) | 判斷字串長度 |
CreditCardNumber | 被註釋的字串必須通過Luhn校驗演算法,銀行卡,信用卡等號碼一般都用Luhn計算合法性 |
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。