堅持學習Java100天第012天 QuickPoll專案實戰06統一處理引數校驗錯誤

需求比較簡單,就是當輸入的引數不是期望的內容的時候,需要伺服器返回錯誤資訊。

比如:

堅持學習Java100天第012天 QuickPoll專案實戰06統一處理引數校驗錯誤

SpringBoot提供了資料校驗工具,需要在pom。xml中引入:

之後我們需要修改實體類Poll,新增相關的引數校驗:

這裡面主要使用了@NotEmpty(message = “要投票問題不能為空”)實現校驗欄位不能為空,是一個必填引數;使用@Size(min = 2, max = 6)控制資料的長度。

之後我們需要新增一個dto。error。ValidationError。java,用於表示驗證錯誤:

然後,我們修改dto。error。ErrorDetail。java,展示欄位校驗錯誤資訊:

修改handler。RestExceptionHandler。java,捕獲並處理引數校驗異常資訊:

修改controller。PollController。java,使用@Valid校驗前端傳遞過來的資料,如果校驗失敗,會自動觸發引數校驗異常:

修改後的controller。PollController。java完整程式碼如下:

啟動服務,使用apifox傳送請求校驗,請求裡面不要寫任何內容:

堅持學習Java100天第012天 QuickPoll專案實戰06統一處理引數校驗錯誤

TAG: 校驗Java引數修改為空