springmvc異常處理-全域性異常處理器開發
阿新 • • 發佈:2019-02-05
springmvc提供全域性異常處理器進行統一異常處理(一個系統只有一個異常處理器)
自定義的異常類
對不同的異常型別定義異常類,異常類繼承Exception
系統自定義異常類,針對預期的異常需要再程式中丟擲此類的異常
全域性的異常處理器
思路:
系統遇到異常,在程式中丟擲,dao拋給Service,Service拋給Controller,Controller拋給前端控制器,前端控制器呼叫全域性異常處理器。
全域性異常處理器處理思路:
首先解析出異常型別。如果該異常型別是系統自定義異常,直接取出異常資訊,在錯誤介面展示。
如果該異常型別不是系統自定義異常,構造一個自定義的異常型別(資訊為“未知錯誤”)
全域性異常處理器要實現HandlerExceptionResolver介面
注意:形參handler就是處理器介面卡執行的handler物件(只有一個method方法)
ex就是系統丟擲的異常
下面程式碼是上面類中異常處理的邏輯程式碼
錯誤的jsp介面
注意寫了多個全域性異常處理器,只有一個會起作用
在Controller中丟擲異常
在Service層丟擲異常資訊