【笔记】SpringBoot异常处理类

前言

一个Controller类可能会有很多方法,每个方法都可能会出现异常,假如每个方法都要进行try catch,就会有大量的冗余代码,通过的异常处理方法解决问题

局部异常处理

  • 仅处理当前类的所有抛出的异常

  • 在Controller类中定义一个通过@ExceptionHandler标注的异常处理方法

1
2
3
4
5
6
@ExceptionHandler(Throwable.class)
@ResponseBody
public String doExceptionHandler(Throwable e) {
e.printStackTrace();
return "500";
}

全局异常处理

  • 通过异常处理类中的异常处理方法处理全局所有抛出的异常

  • exception包下创建一个异常处理类GlobalExceptionHandler

  • 在异常处理类中定义异常处理方法

1
2
3
4
5
6
7
8
9
10
@RestControllerAdvice
public class GlobalExceptionHandler {

@ExceptionHandler(Throwable.class)
public String doExceptionHandler(Throwable e) {
e.printStackTrace();
return "500";
}

}

完成