springboot异常处理
时间: 2023-08-29 07:11:29 浏览: 52
在Spring Boot中,可以使用统一的异常处理机制来处理应用程序中的异常。以下是一些处理异常的方法:
1. 使用@ControllerAdvice注解和@ExceptionHandler注解来创建一个全局异常处理器。通过在@ControllerAdvice注解的类中定义@ExceptionHandler注解的方法,可以捕获并处理应用程序中出现的异常。例如:
```java
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(Exception.class)
public ResponseEntity<String> handleException(Exception ex) {
// 处理异常逻辑
return new ResponseEntity<>("Something went wrong", HttpStatus.INTERNAL_SERVER_ERROR);
}
}
```
2. 使用@RestControllerAdvice注解和@ExceptionHandler注解来创建一个全局异常处理器。与@ControllerAdvice类似,但返回的是JSON格式的响应。例如:
```java
@RestControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(Exception.class)
public ResponseEntity<Map<String, Object>> handleException(Exception ex) {
Map<String, Object> response = new HashMap<>();
response.put("error", "Something went wrong");
return new ResponseEntity<>(response, HttpStatus.INTERNAL_SERVER_ERROR);
}
}
```
3. 使用自定义异常类来处理特定类型的异常。可以创建自己的异常类,并使用@ControllerAdvice或@RestController