异常显示页面

默认情况,Spring Boot项目错误页面如下。

当项目实际上线,如果给用户显示这个页面就不是很友好。当系统出现异常时应该给用户显示更加友好的错误页面。

设置具体的状态码页面

templates/下新建error文件夹,在error中新建:状态.html的页面。例如当出现500时显示的页面为500.html

使用x进行模糊匹配

当出现5开头状态码的错误时,显示页面可以命名为5xx.html

当出现50开头状态码的错误时,显示页面可以命名为50x.html

统一错误显示页面

templates下新建error.html。如果项目中不存在具体状态码的页面或没有使用x成功匹配的页面时,显示error.html作为错误显示页面。

一、 异常处理

Spring Boot项目中除了设置错误页面,还可以通过注解实现错误处理。

常见方式有两种:

在控制器类中添加一个方法,结合@ExceptionHandler。但是只能对当前控制器中方法出现异常进行解决。

新建全局异常类,通过@ControllerAdvice结合@ExceptionHandler。当全局异常处理和局部处理同时存在时,局部生效(就近原则)

局部异常处理

@Controller
public class DemoController {
    @RequestMapping("/demo1")
    @ResponseBody
    public String demo1(){
        int i = 5/0;
        return "demo1";
    }

    @ExceptionHandler(ArithmeticException.class)
    @ResponseBody
    public String ArithmeticException(){
        return "出错了";
    }
}

  

全局异常处理类

@ControllerAdvice
public class ExceptionController {
    @ExceptionHandler(ArithmeticException.class)
    @ResponseBody
    public String AriExceptioin(){
        return "执行全局";
    }
}

  

原文地址:https://www.cnblogs.com/vincentmax/p/14345104.html