一、创建普获异常的类
二、定义异常处理器
-
定义全局异常处理器非常简单,就是定义一个类,在类上加上一个注解@RestControllerAdvice,加上这个注解就代表我们定义了一个全局异常处理器。
-
在全局异常处理器当中,需要定义一个方法来捕获异常,在这个方法上需要加上注解@ExceptionHandler。通过@ExceptionHandler注解当中的value属性来指定我们要捕获的是哪一类型的异常。
三、代码实现
// 全局异常处理器
@RestControllerAdvice
public class GlobalExceptionHandler {
// 异常处理
@ExceptionHandler(Exception.class) //指定能够处理的异常类型
public Result ex(Exception e){
//打印堆栈中的异常信息
e.printStackTrace();
//捕获到异常之后,响应一个标准的Result
return Result.error("服务器出错了");
}
}
PS:
@RestControllerAdvice = @ControllerAdvice + @ResponseBody
处理异常的方法返回值会转换为json后再响应给前端