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要配置全局异常处理器的完整类名-->