Java中的Bean Validation

JSR 303 是java中的Bean Validation 的規(guī)范,當我們處理一個應(yīng)用程序的業(yè)務(wù)邏輯,數(shù)據(jù)校驗是必須要考慮和面對的事情,應(yīng)用程序必須通過某種手段來確保輸入進來的數(shù)據(jù)從語義上來講是正確的,我們的應(yīng)用程序通常是采用分層開發(fā)的,有時候相同的邏輯校驗會出現(xiàn)在不同層之中,防止代碼的冗余,為了避免這樣的情況發(fā)生,最好是將驗證邏輯與相應(yīng)的域模型進行綁定。
Hibernate Validator 是 Bean Validation 的參考實現(xiàn) . Hibernate Validator 提供了 JSR 303 規(guī)范中所有內(nèi)置 constraint 的實現(xiàn)。

Java校驗API所提供的校驗注解

javaValidation1.png

javaValidation2.png

可以在Spring mvc的請求方法中使用@Valid來進行數(shù)據(jù)的校驗。

public String userRegister(@Valid User user,Errors errors){}

如果有校驗出現(xiàn)錯誤的話, 那么這些錯誤可以通過Errors對象進行訪問,(重要一點需要注意, Errors參數(shù)要緊跟在帶有@Valid注解的參數(shù)后面, @Valid注解所標注的就是要檢驗的參數(shù)。 )這樣我們就可以首先直接
通過調(diào)用 Errors.hasErrors() 來檢驗數(shù)據(jù)是否有錯誤,做出相應(yīng)操作。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容