1. 程式人生 > >基於spring框架的java開發中的異常處理

基於spring框架的java開發中的異常處理

在springmvc框架的中異常處理的方式有兩種:
1,在控制器中使用@ExceptionHandler(xxxException.class)註解修飾一個方法,該註解能夠處理通一個控制器類中的丟擲的xxxExcepiton異常。
使用控制器通知註解@ControllerAdvice(該註解擁有@Component註解的特性,可以被元件掃描)修飾一個類,在該類中使用@ExceptionHandler註解修飾方法,類似切面程式設計一樣,能夠處理整個程式中的控制器類丟擲的對應異常。
2,在xml配置檔案中配置StatusSimpleMappingExceptionResolver類的bean。StatusSimpleMappingExceptionResolver是繼承自SimpleMappingExceptionResolver的一個自定義的異常處理解析器。
<bean id="handlerExceptionResolver"
   
class="com.zx.framework.web.exception.StatusSimpleMappingExceptionResolver">
//定義需要特出處理的異常類
    <property name="exceptionMappings">
    <props>
    <prop key="com.zx.framework.web.exception.AjaxException">errors/ajax_error</prop>
   
</props>
    </property>
//定義一個變數用來儲存丟擲的異常,通過該變數異常處理頁面可以獲取丟擲的異常物件所帶的異常資訊,如果不設定,預設的變數是exception;
<property name="exceptionAttribute" value="error"/>
    <property name="statusCodes">
    <props>
    <prop key="errors/404">404</prop>
   
</props>
    </property>
    </bean>