Spring下編寫統一的異常處理類

2021-10-19 08:19:02 字數 1236 閱讀 1451

統一的異常處理

/**

*集中處理異常

*///註明此異常處理類需要處理哪個包出現的異常

@restcontrolleradvice

(basepackages =

"com.controller"

)/*@org.springframework.web.bind.annotation.controlleradvice*/

public

class

controlleradvice

,異常型別{}"

,e.getmessage()

,e.getclass()

);bindingresult bindingresult = e.

getbindingresult()

; map

errormap =

newhashmap

<

>()

; bindingresult.

getfielderrors()

.foreach

((fielderror)

->);

return r.

error

(bizcodeenume.vaild_exception.

getcode()

,bizcodeenume.vaild_exception.

getmsg()

).put(

"data"

,errormap);}

@exceptionhandler

(value = throwable.

class

)public r handleexception

(throwable t)

}

注意:此齣第乙個方法傳參methodargumentnotvalidexception 是我專案報的異常,第二個方法即處理所以異常

bizcodeenume類(指定錯誤編碼和錯誤提示資訊):

public

enum bizcodeenume

public

intgetcode()

public string getmsg()

}

統一處理異常

1.controlleradvice 註解定義全域性異常處理類 controlleradvice public class globalexceptionhandler 2.exceptionhandler 註解宣告異常處理方法,註解的方法的引數列表裡,還可以宣告很多種型別的引數 controlle...

Spring自定義異常,與全域性異常統一處理

1 自定義乙個異常類,繼承執行時異常,可以用try catch捕獲該自定義異常 author tastill version 2019 11 29 9 47 description 外網異常丟擲統一方法 public class wwexception extends runtimeexceptio...

spring中的統一異常處理

在具體的ssm專案開發中,由於controller層為處於請求處理的最頂層,再往上就是框架 的。因此,肯定需要在controller捕獲所有異常,並且做適當處理,返回給前端乙個友好的錯誤碼。不過,controller一多,我們發現每個controller裡都有大量重複的 冗餘的異常處理 很是囉嗦。能...