@ExceptionHandler使用方法
120浏览 · 2024-06-14 16:07:48
@ExceptionHandler是Spring框架中的一个注解,用于处理全局异常。当应用程序中发生异常时,@ExceptionHandler注解可以捕获并处理这些异常,以便提供自定义的[错误处理](https://geek.csdn.net/educolumn/09015d7487fe01148ae2ba36e386933b?spm=1055.2569.3001.10083)逻辑。
使用@ExceptionHandler注解的步骤如下:
1. 在控制器类中定义一个带有@ExceptionHandler注解的方法,用于处理特定类型的异常。该方法可以有多个参数,其中第一个参数是异常类型,后面可以跟随其他参数,如HttpServletRequest或HttpServletResponse等。
2. 在@ExceptionHandler注解中指定要处理的异常类型。可以使用value属性指定单个异常类型,也可以使用多个value属性指定多个异常类型。
3. 在处理方法中编写自定义的[错误处理](https://geek.csdn.net/educolumn/09015d7487fe01148ae2ba36e386933b?spm=1055.2569.3001.10083)逻辑。可以根据需要进行日志记录、返回自定义错误信息或执行其他操作。
以下是一个使用@ExceptionHandler注解的示例:
```java
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(value = {Exception.class})
public ResponseEntity<[string](https://geek.csdn.net/edu/8802d631b97a4a6af1f4d0bbf8527465?dp_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6NDQ0MDg2MiwiZXhwIjoxNzA3MzcxOTM4LCJpYXQiOjE3MDY3NjcxMzgsInVzZXJuYW1lIjoid2VpeGluXzY4NjQ1NjQ1In0.RrTYEnMNYPC7AQdoij4SBb0kKEgHoyvF-bZOG2eGQvc&spm=1055.2569.3001.10083)> handleException(Exception ex) {
// 自定义[错误处理](https://geek.csdn.net/educolumn/09015d7487fe01148ae2ba36e386933b?spm=1055.2569.3001.10083)逻辑
[string](https://geek.csdn.net/edu/8802d631b97a4a6af1f4d0bbf8527465?dp_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6NDQ0MDg2MiwiZXhwIjoxNzA3MzcxOTM4LCJpYXQiOjE3MDY3NjcxMzgsInVzZXJuYW1lIjoid2VpeGluXzY4NjQ1NjQ1In0.RrTYEnMNYPC7AQdoij4SBb0kKEgHoyvF-bZOG2eGQvc&spm=1055.2569.3001.10083) errorMessage = "An error occurred: " + ex.getMessage();