第一种方式,实现HandlerExceptionResolver 接口
- package com.qfedu.deom.exception;
-
- import org.springframework.stereotype.Component;
- import org.springframework.web.servlet.HandlerExceptionResolver;
- import org.springframework.web.servlet.ModelAndView;
-
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
-
- /**
- * 第一种全局异常处理器
- * 这是一个全局异常处理类,使用的时候,只需要将这个类注册到 Spring 容器中即可
- */
- //@Component
- public class MyGlobalException implements HandlerExceptionResolver {
- /**
- * 当系统抛出异常的时候,会自动触发的方法
- * @param request
- * @param response
- * @param handler 发生问题的处理器(具体的接口)
- * @param ex 具体抛出的异常
- * @return
- */
- @Override
- public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler,
- Exception ex) {
- ModelAndView modelAndView = new ModelAndView("error");
- modelAndView.addObject("error",ex.getMessage());
- return modelAndView;
-
- }
- }
第二种方式,使用注解@ExceptionHandler(重点学习)
- package com.qfedu.deom.exception;
-
- import org.spri