全局异常处理器优先级设定
时间: 2023-07-20 17:42:55 浏览: 99
在 Spring Boot 中,可以通过实现 Ordered 接口或使用 @Order 注解来设置全局异常处理器的优先级。
1. 实现 Ordered 接口
实现 Ordered 接口可以让全局异常处理器具有优先级。实现 Ordered 接口后,需要重写 getOrder 方法,返回一个整数值,值越小优先级越高。
```java
@ControllerAdvice
public class GlobalExceptionHandler implements Ordered {
@Override
public int getOrder() {
return 1;
}
// ...
}
```
2. 使用 @Order 注解
使用 @Order 注解也可以设置全局异常处理器的优先级。@Order 注解的值越小,优先级越高。
```java
@ControllerAdvice
@Order(1)
public class GlobalExceptionHandler {
// ...
}
```
需要注意的是,当一个异常被多个全局异常处理器处理时,处理器的执行顺序是根据优先级来决定的。因此,需要根据业务需求合理设置全局异常处理器的优先级。
阅读全文