springmvc 自定義異常處理

2021-07-11 04:50:29 字數 2071 閱讀 2582

springmvc利用handlerexceptionresolver處理程式的異常,包括處理對映對映異常,資料繫結,處理器執行過程中發生的異常

public

inte***ce handlerexceptionresolver

當發生異常的時候,直接呼叫resolveexception,生成乙個modelandview報告給使用者

handlerexceptionresolver 的實現類預設有四個

1.defaulthandlerexceptionresolver 預設已經安裝,他會直接將異常轉化成相應的響應狀態碼,可以在web.xml配置狀態,轉到響應的異常處理頁面

403error-code>

/web-inf/jsp/error/403.jsplocation>

error-page>

404error-code>

/web-inf/jsp/error/404.jsplocation>

error-page>

405error-code>

/web-inf/jsp/error/405.jsplocation>

error-page>

500error-code>

/web-inf/jsp/error/500.jsplocation>

error-page>

2.annotationmethodhandlerexceptionresolver 預設已經安裝,可以通過註解的方式處理異常

@exceptionhandler(runtimeexception.class)

@responsebody

public string handlerexception()

@exceptionhandler可以指定監聽哪個異常型別,如果不指定,則預設不監聽任何異常

}}我們這裡自定義了乙個異常處理器,可以處理非同步請求發生的異常,然後我們把自定義的異常處理註冊到springmvc中

class="com.liuxg.util.exception.customerexceptionhandler">

key="com.liuxg.util.exception.systemexception">task/taskprop>

props>

property>

bean>

這裡我們還可以自定義一些異常對映處理類,例如,我們自己定義systemexception異常處理類

@suppresswarnings("serial")

public

class

systemexception

extends

exception

public

systemexception(throwable cause)

public

systemexception(string msg, throwable cause)

}

然後我們在程式中就可以丟擲自己定義的異常類別,然後交由我們自定義的處理器進行處理

public

void

mvctest1() throws systemexception

SpringMVC的自定義異常

預設的異常處理機制是向上丟擲,最終將異常結果拋在web頁面,這樣對使用者來說很不友好,所以可以通過自定義異常的方式來解決這個問題。第一步 自定義乙個異常類 自定義異常類 public class sy ception extends exception public sy ception overr...

Spring MVC回顧(2) 自定義異常

編寫自定義異常類 編寫乙個異常處理器類,並在springmvc中配置 在控制器中會產生異常的 上加入try catch塊 編寫乙個前端頁面。顯示異常資訊 瀏覽器傳送request請求,前端控制器攔截,送到控制器後,呼叫相應方法,出現異常 拋出自定義異常,傳送給前端控制器。前端控制器把異常物件傳送給異...

springmvc的自定義異常處理

系統中一般有controller service dao三層,當出現異常時,向上丟擲,最後由springmvc的前端控制器交給異常處理器。public class customexception extends exception public string getmessage exception...