99偷拍视频精品区一区二,口述久久久久久久久久久久,国产精品夫妇激情啪发布,成人永久免费网站在线观看,国产精品高清免费在线,青青草在线观看视频观看,久久久久久国产一区,天天婷婷久久18禁,日韩动漫av在线播放直播

怎么在SpringMVC中對全局異常進行處理-創(chuàng)新互聯(lián)

怎么在SpringMVC中對全局異常進行處理?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

創(chuàng)新互聯(lián)公司是一家專業(yè)從事成都網(wǎng)站建設、網(wǎng)站設計的網(wǎng)絡公司。作為專業(yè)網(wǎng)站制作公司,創(chuàng)新互聯(lián)公司依托的技術實力、以及多年的網(wǎng)站運營經(jīng)驗,為您提供專業(yè)的成都網(wǎng)站建設、營銷型網(wǎng)站建設及網(wǎng)站設計開發(fā)服務!

SpringMVC全局異常處理的三種方式


  • 使用 Spring MVC 提供的簡單異常處理器 SimpleMappingExceptionResolver;

  • 實現(xiàn) Spring 的異常處理接口 HandlerExceptionResolver 自定義自己的異常處理器;

  • 使用 @ExceptionHandler 注解實現(xiàn)異常處理;

案例實操

全局異常處理方式一

配置 SimpleMappingExceptionResolver 對象

<bean class="org.springframework.web.servlet.handler.SimpleMappingException Resolver">
  <property name="defaultErrorView" value="error"></property>
  <property name="exceptionAttribute" value="ex"></property>
  <property name="exceptionMappings">
    <props>
      <prop key="com.xxx.exception.BusinessException">error1</prop>
      <prop key="com.xxx.exception.ParamsException">error2</prop>
    </props>
  </property>
</bean>

全局異常處理方式二

實現(xiàn) HandlerExceptionResolver 接口

@Component
public class GlobalException implements HandlerExceptionResolver {
  @Override
  public ModelAndView resolveException(HttpServletRequest request,
    HttpServletResponse response, Object handler, Exception ex) {
      Map<String,Object> map=new HashMap<String, Object>();
      map.put("ex", ex);
      ModelAndView mv=null;
      if(ex instanceof ParamsException){
      	return new ModelAndView("error_param", map);
      }
      if(ex instanceof BusinessException){
      	return new ModelAndView("error_business", map);
      }
    return new ModelAndView("error", map);
  } 
}

使用實現(xiàn) HandlerExceptionResolver 接口的異常處理器進行異常處理,具有集成簡單、有良好的擴展性、對已有代碼沒有入侵性等優(yōu)點,同時,在異常處理時能獲取導致出現(xiàn)異常的對象,有利于提供更詳細的異常處理信息。

全局異常處理方式三

頁面處理器繼承 BaseController

public class BaseController {
  @ExceptionHandler
  public String exc(HttpServletRequest request,HttpServletResponse
  response,Exception ex){
    request.setAttribute("ex", ex);
    if(ex instanceof ParamsException){
      return "error_param"; 
    }
    if(ex instanceof BusinessException){
      return "error_business"; 
    }
    return "error";
  } 
}

使用 @ExceptionHandler 注解實現(xiàn)異常處理,具有集成簡單、有擴展性好(只需要將要異常處理的 Controller 類繼承于 BaseController 即可)、不需要附加 Spring 配置等優(yōu)點,但該方法對已有代碼存在入侵性(需要修改已有代碼,使相關類繼承于 BaseController),在異常處理時不能獲取除異常以外的數(shù)據(jù)。

看完上述內(nèi)容,你們掌握怎么在SpringMVC中對全局異常進行處理的方法了嗎?如果還想學到更多技能或想了解更多相關內(nèi)容,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

網(wǎng)頁題目:怎么在SpringMVC中對全局異常進行處理-創(chuàng)新互聯(lián)
URL地址:http://www.yijiale78.com/article24/djgeje.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供響應式網(wǎng)站手機網(wǎng)站建設動態(tài)網(wǎng)站網(wǎng)站改版小程序開發(fā)網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營