專案統一異常處理

2021-10-06 00:15:27 字數 1920 閱讀 5153

在開發過程中,不可避免的是需要處理各種異常,異常處理方法隨處可見,所以**中就會出現大量的try catch finally**塊,不僅會造成大量的冗餘**,而且還影響**的可讀性,所以對異常統一處理非常有必要。為此,我們定義了乙個統一的異常類yamishopbindexception與異常管理類defaultexceptionhandlerconfig

我們先來看下yamishopbindexception的**

public

class

yamishopbindexception

extends

runtimeexception

/** * @param httpstatus http狀態碼

}

yamihttpstatus為我們自定義的返回狀態碼的列舉類,定義為乙個列舉類,更直觀處理異常返回的狀態碼及異常內容,以後每增加一種異常情況,只需增加乙個列舉例項即可,不用每一種異常都定義乙個異常類。

}}再來看看defaultexceptionhandlerconfig

@controller

@restcontrolleradvice

public

class

defaultexceptionhandlerconfig

}

前端請求與相應做了封裝,請求響應的內容會被***所攔截,當後台返回給前台特定的狀態碼,前台將顯示不同報錯資訊。請求響應非常常見,我們檢視在src\utils\httprequest.js裡面的其中一段**

('http請求方式有誤'

)break

case

500:

message.

error

('伺服器出了點小差,請稍後再試'

)break

case

501:

message.

error

('伺服器不支援當前請求所需要的某個功能'

)break

}return promise.

reject

(error)

})這裡將會統一攔截返回的狀態碼如400,進行錯誤提示。

我們的上述**使用http狀態碼對請求進行統一響應,其中最大的

restful架構,就是目前最流行的一種網際網路軟體架構。它結構清晰、符合標準、易於理解、擴充套件方便,所以正得到越來越多**的採用。

restful概述

Springboot專案統一異常處理

二 定義全域性異常類 三 定義異常處理類 四 特殊處理404異常 五 測試使用效果 基於目前大多數專案都採用前後端分離架構,所以後端介面統一返回值封裝是比較重要的,便於前後端對接與統一處理。當然按各自專案約定實現即可,思路大同小異,下面是我的實現方式,僅供參考 filename result des...

sprintboot專案統一異常處理

我們想讓異常結果也顯示為統一的返回結果物件,並且統一處理系統的異常資訊,那麼需要統一異常處理 統一異常處理需要兩個註解進行搭配 controlleradvice exceptionhandler controlleradvice有三大作用 全域性異常處理 全域性資料繫結 全域性資料預處理 excep...

SpringBoot專案統一異常處理方案(二)

利用controlleradvice exceptionhandler實現統一異常處理自定義全域性異常處理類並加上 controlleradvice註解 通過在自定義類上加 controlleradvice註解,這樣能為controller做一些增強的功能,並在自定義方法上加 exceptionha...