全局请求异常处理
注意标题中的“全局请求异常处理”,只处理请求的异常,非请求异常没有被处理。
目录结构
配置
basePackages
@ControllerAdvice(basePackages = "org.my.pkg")
或@ControllerAdvice(basePackages = {"org.my.pkg", "org.my.other.pkg"})
//basePackages定位到具体包名,别再加*号了(错误示例:org.xxx.xxx.cms.controller.*)
@ControllerAdvice(basePackages = "org.xxx.xxx.cms.controller")
public class GlobalExceptionHandler {
@ExceptionHandler(Exception.class)
public void runtimeException(Exception e) {
e.printStackTrace();
}
}
Aop日志
//注意:不要捕获,要throws Throwable,不然全局异常处理类捕获不到
Object result = joinPoint.proceed();
执行顺序
Aop日志处理类 > 全局异常处理类