Spring统一异常处理之@ControllerAdvice

@ControllerAdvice

本文描述用法,关于原理与深入理解,可能后期再补充

使用场景:

  • 全局异常处理
  • 全局数据绑定
  • 全局数据预处理

全局数据绑定与全局数据处理目前很少用,但是可能去了解,主要多用于全局异常处理

全局异常处理使用:

1、在类上加上该注解:

@ControllerAdvice public class MyGlobalExceptionHandler { }

2、编写异常拦截方法:

@ExceptionHandler(Exception.class) public CommonResult customException(Exception e) { log.error(e.toString(), e.getMessage()); return CommonResult.newInstanceFail(ConstantsEnum.SERVER_ERROR, e.getMessage()); }
该方法的返回值与方法名可以随意取,注解@ExceptionHandler中的异常类名,是对那种异常捕捉就写哪个异常类名,比如空指针异常,指针越界之类的, Exception.class代表全部异常,在方法体中处理返回值......

至此全局捕捉异常处理完毕了.....

上一篇:Windows进程端口相关命令


下一篇:单例模式序列或反射破坏单例模式产生的Exception in thread "main" java.io.InvalidClassException:错误