统一异常处理

    科技2022-07-16  105

    先定义异常页面

    创建一个方法进行异常处理

    package com.hgmj.workblog.handler; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.core.annotation.AnnotationUtils; import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ResponseStatus; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; //全局异常处理,用来监听controller @ControllerAdvice public class ControllerExceptionHandler { private final Logger logger = LoggerFactory.getLogger(this.getClass()); //ExceptionHandler 表示这个方法是用来处理异常的; Exception.class为只要是Exception级别的异常都能捕抓到 @ExceptionHandler(Exception.class) public ModelAndView exceptionHander(HttpServletRequest request, Exception e) throws Exception { //将错误路径和异常信息放入日志中 logger.error("Requst URL : {},Exception : {}", request.getRequestURL(),e); ModelAndView mv = new ModelAndView(); mv.addObject("url",request.getRequestURL()); mv.addObject("exception", e); mv.setViewName("error/error"); return mv; } }
    Processed: 0.009, SQL: 8