前端後端進行互動時,前端上送的引數校驗,簡單的通過註解實現,方便快捷,而不需要再次開發**邏輯;
1,引數校驗的前提是controller層的方法裡需使用@valid開啟校驗
("/test"
)public string test
(@valid
@requestbody student stu)
2,用於校驗的註解
註解說明
空檢查
@null
驗證物件是否為null
@notnull
驗證物件是否不為null, 無法查檢長度為0的字串
@notblank
檢查約束字串是不是null還有被trim的長度是否大於0,只對字串,且會去掉前後空格.(只能使用在字串的校驗上 )
@notempty
檢查約束元素是否為null或者是empty.
booelan檢查
@asserttrue
驗證 boolean 物件是否為 true
@assertfalse
驗證 boolean 物件是否為 false
長度檢查
@size(min=, max=)
驗證物件(array,collection,map,string)長度是否在給定的範圍之內
@length(min=, max=)
一般用於校驗字串的長度
日期檢查
@past
驗證 date 和 calendar 物件是否在當前時間之前
@future
驗證 date 和 calendar 物件是否在當前時間之後
數值檢查
@min
驗證 number 和 string 物件是否大等於指定的值
@max
驗證 number 和 string 物件是否小等於指定的值
@decimalmax
被標註的值必須不大於約束中指定的最大值. 這個約束的引數是乙個通過bigdecimal定義的最大值的字串表示.小數存在精度
@decimalmin
被標註的值必須不小於約束中指定的最小值. 這個約束的引數是乙個通過bigdecimal定義的最小值的字串表示.小數存在精度
@digits
驗證 number 和 string 的構成是否合法
@digits(integer=,fraction=)
驗證字串是否是符合指定格式的數字,interger指定整數精度,fraction指定小數精度。
@range(min=, max=,message=「range.bean.wage」)
checks whether the annotated value lies between (inclusive) the specified minimum and maximum.
其他
@pattern
驗證 string 物件是否符合正規表示式的規則
@creditcardnumber
信用卡驗證
驗證是否是郵件位址,如果為null,不進行驗證,算通過驗證。
@scriptassert(lang= ,script=, alias=)
@url(protocol=,host=, port=,regexp=, flags=)
3.簡單運用
@data
public
class
order
建立實體類
下面直奔今天的主題 建立實體類 一點小插曲 接觸abp框架之前,一直都是使用的ef的dbfirst,在那種模式下,我們只要設計好資料庫,然後直接通過模板就生成了實體層,甚至都沒怎麼留意實體層的 是什麼樣子。現在要使用codefirst,就要反過來,先要寫 了,真有點不適應。好吧,為了學好abp,也要...
request 接收全部引數轉為實體類
param request param beanclass description 接收request全部引數轉換實體累 轉換 beanutils.populate bean,map return bean catch exception e return null param request pa...
字典實體類 DictionaryEntry類
dictionaryentry類是乙個字典集合,主要包含的內容是鍵 值對。這種組合方式可以方便地定位資料,其中的 鍵 具備唯一性,類似於資料庫中的 id 乙個id對應一天記錄,而乙個鍵只對應乙個值。使用dictionaryenry類可以方便地設定和檢索資料。雖然被稱為字典集合,但dictionary...