Spring boot 全局異常處理 @ControllerAdvice 無效,無法進入 @ExceptionHandler


網上找了很多資料,說什么原因的都有,試了半天

后來才發現,是自己加了log的aop切面,所以exception半路就被劫道了!!!

 

問題出在下面這端注釋的代碼中

可以看到我用try catch 對proceed方法進行包裹,一旦目標方法異常,catch就會被這里捕捉到並拋出異常處理掉,所以無法向上拋出,更無法到達@ControllerAdvice的全局異常處理器中!

   @Around("webLog()")

    public Object arround(ProceedingJoinPoint pjp) throws Throwable {
// try {
// Object o = pjp.proceed();
// return o;
// } catch (Throwable e) {
// e.printStackTrace();
// return null;
// }
Object o = pjp.proceed();
return o;
}




根本原因請看下面這張圖:

 
        

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM