今天在做專案的時候突然發現異常處理還有所欠缺,所有打算好好的加強一下異常的處理,順便好好鞏固以前學習的知識和增加新的知識。
實現spring介面-handlerexceptionresolver
public
class
exceptionresolver
implements
handlerexceptionresolver
}
class="com.***.exception.exceptionresolver" />
以下便是乙個小小的例子:
public
class
exceptionresolver
implements
handlerexceptionresolver
return
null;}}
寫乙個testcontroller模擬丟擲異常
public string exceptionmethod() throws exception
測試結果:
頁面也跳轉了:
同樣也可以通過繼承abstracthandlerexceptionresolver類:
public
class
exceptionresolver
extends
abstracthandlerexceptionresolver
}
注意:上面這種方式只能捕獲丟擲的異常,如果在controller內被catch下的異常是不會被處理的!
2.通過使用@controlleradvice註解的方式實現異常的處理
@controlleradvice
public
class webexceptionhandler
}
spring異常處理
spring提供了多種方式將異常轉化為響應 1.內建的將以異常轉換為http碼就不說了,由spring自身丟擲,然後產生對應的http狀態碼響應。2.下例子用 responsestatus註解將myexception異常對映為http狀態碼404。沒有找到 public class myexcept...
Spring 處理異常
目錄 1.簡介 2.spring自身異常自動對映為指定http狀態碼 3.使用 responsestatus將自定義異常對映為指定http狀態碼 4.基於控制器處理異常 exceptionhandler 5.全域性異常處理 controlleradvice 推薦 參考 spring mvc異常統一處...
Spring 全域性異常處理
1 描述 在j2ee專案的開發中,不管是對底層的資料庫操作過程,還是業務層的處理過程,還是控制層的處理過程,都不可避免會遇到各種可預知的 不可預知的異常需要處理。每個過程都單獨處理異常,系統的 耦合度高,工作量大且不好統一,維護的工作量也很大。那麼,能不能將所有型別的異常處理從各處理過程解耦出來,這...