全局异常处理

1、写一个全局异常处理类实现HandlerExceptionResolver接口

2、实现异常处理逻辑

public class GlobalExceptionReslover implements HandlerExceptionResolver {

    Logger logger = LoggerFactory.getLogger(GlobalExceptionReslover.class);
    
    @Override
    public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler,
            Exception ex) {
        //写日志文件
        logger.error("系统发生异常", ex);
        //发邮件、发短信
        //Jmail:可以查找相关的资料
        //需要在购买短信。调用第三方接口即可。
        //展示错误页面
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.addObject("message", "系统发生异常,请稍后重试");
        modelAndView.setViewName("error/exception");
        return modelAndView;
    }

}

3、容器管理全局异常处理的类,springmvc中配置<bean  class="...GlobalExceptionReslover"/>

<!--配置全局异常处理-->
<bean class="com.taotao.search.exception.GlobalExceptionReslover"/>
<!--这里的配置不需要id,因为没有地方需要用,直接让容器管理就可以了,class要配置全局异常处理器的完整类名-->

 

posted @ 2018-04-20 07:36  admin_jh  阅读(261)  评论(0编辑  收藏  举报