我们访问接口有时会因为各种原因产生各种错误比如空指针,那么如何优雅的处理这些异常呢?
1定义异常接口:
@RequestMapping("/exception")
public String exception() throws Exception {
throw new Exception("发生错误");
}
2创建GlobalExceptionHandler类
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(value = Exception.class)
public ModelAndView handle(HttpServletRequest req, Exception e) {
ModelAndView modelAndView = new ModelAndView("error");
modelAndView.addObject("exception", e);
modelAndView.addObject("url", req.getRequestURI());
return modelAndView;
}
}
3创建error页面:
<body> <h1>this is error</h1> <div th:text="${url}"></div> <div th:text="${exception.message}"></div> </body>