sprintboot專案統一異常處理

2021-10-10 23:28:31 字數 1751 閱讀 8272

我們想讓異常結果也顯示為統一的返回結果物件,並且統一處理系統的異常資訊,那麼需要統一異常處理

統一異常處理需要兩個註解進行搭配

@controlleradvice

@exceptionhandler

@controlleradvice有三大作用:

全域性異常處理

全域性資料繫結

全域性資料預處理

@exceptionhandler註解可以用來統一處理方法丟擲的

首先需要在類上加上註解@controlleradvice

然後編寫全域性異常處理的方法

例如:

/**

* 全域性異常處理

* @param e

* @return

*/@exceptionhandler

(exception.

class

)//在出現什麼異常的時候執行該方法

@responsebody

//可以返回資料

public r error

(exception e)

@exceptionhandler註解中可以規定當出現異常時就執行該方法

其中 r 是返回統一的資料型別,參考另一篇文章統一返回資料格式

首先新增異常處理的方法

/**

* 特定異常處理:出錯時,會先檢視特定異常,如果沒有特定異常,就會執行全域性異常處理

* @param e

* @return

*/@exceptionhandler

(arithmeticexception.

class

)//在出現什麼異常的時候執行該方法

@responsebody

//可以返回資料

public r error

(arithmeticexception e)

當出現arithmeticexception異常時,就會執行該方法

1、建立自定義異常類

@data

@allargsconstructor

//所有的有參構造

@noargsconstructor

//無參構造

public

class

guliexception

extends

runtimeexception

其中註解上邊的三個註解用到外掛程式lombok,參考文章lombok外掛程式使用

guliexception就是自定義異常的類,名字可以隨意取

2、業務中需要的位置丟擲guliexception

eg:

try

catch

(exception e)

3、新增異常處理方法

/**

* 自定義異常

* @param e

* @return

*/@exceptionhandler

(guliexception.

class

)@responsebody

//可以返回資料

public r error

(guliexception e)

這樣就完成的指定的異常處理

Sprintboot中使用Redis的一些總結

在pom.xml中加入redis相關依賴 org.springframework.boot spring boot starter data redis 然後在properties檔案中配置配置檔案 spring.redis.host spring.redis.port 6379 spring.re...

Spring Boot中Web應用的統一異常處理

我們在做web應用的時候,請求處理過程中發生錯誤是非常常見的情況。spring boot提供了乙個預設的對映 error,當處理中丟擲異常之後,會轉到該請求中處理,並且該請求有乙個全域性的錯誤頁面用來展示異常內容。如圖 雖然,spring boot中實現了預設的error對映,但是在實際應用中,上面...

Spring Boot中Web應用的統一異常處理

我們在做web應用的時候,請求處理過程中發生錯誤是非常常見的情況。spring boot提供了乙個預設的對映 error,當處理中丟擲異常之後,會轉到該請求中處理,並且該請求有乙個全域性的錯誤頁面用來展示異常內容。選擇乙個之前實現過的web應用 chapter3 1 2 為基礎,啟動該應用,訪問乙個...