2024年3月9日发(作者:)

SpringBoot拦截全局异常统一处理

(RestControllerAdvice注解)

public class GlobalExceptionHandler

public ResponseEntity handleException(Exception ex)

//处理逻辑

return

(AL_SERVER_ERROR).body("服

务器内部错误");

}

public ResponseEntity

handleUserNotFoundException(UserNotFoundException ex)

//处理逻辑

return (_FOUND).body("用

户不存在");

}

//其他异常处理方法

在上面的代码中,我们定义了两个异常处理方法。第一个方法用来处

理所有Exception类型的异常,第二个方法用来处理

UserNotFoundException类型的异常。

在异常处理方法中,我们可以根据具体的业务需求对异常进行处理。

我们可以返回合适的HTTP状态码和相应的错误信息,或者进行其他一些

逻辑处理。

当应用中抛出对应的异常时,全局异常处理类会拦截这些异常,并调

用对应的异常处理方法进行处理。然后根据处理方法中的返回结果,返回

给客户端合适的响应。

除了处理异常方法,全局异常处理类还可以定义其他方法,比如处理

参数校验失败、权限不足等情况的方法。这样,在应用的任何地方抛出这

些异常时,都可以统一处理。