課程目標
對 SpringBoot 項目中的所有異常進行響應,處理成統一的格式輸出。
操作步驟
添加依賴
添加 spring-boot-starter-web 的依賴
編碼
構建統一輸出類,作為項目所有接口的輸出對象
編寫異常處理器
- 類上添加 @RestControllerAdvice 註解,是 @ResponseBody 與 @ControllerAdvice 的結合,其中 @ControllerAdvice 用於註冊異常處理器,而 @ResponseBody 用於標記該類中所有方法返回類型為 JSON。
- 方法上添加 @ExceptionHandler 註解,用於標記該方法用於處理何種異常。
- 該類中可以同時編寫多個方法,用於處理多種異常,Spring 會自行根據異常類型選擇執行相應的方法。
編寫接口
編寫項目啟動類
驗證結果
編寫測試用例
調用測試用例可以看到輸出
源碼地址
本章源碼 : https://gitee.com/gongm_24/spring-boot-tutorial.git
總結
通過全局異常處理,可以保證系統在出現異常的情況下,出參結構是統一的,結合接口正常情況下的返回結構,就可以保證整個系統的出參結構一致,這種方式不管是跟前端交互還是跟其它系統交互,都很重要。
閱讀更多 死牛胖子 的文章