Back to questions
Junior — Middle
91
Какими методами в Spring можно реализовать обработку исключительных ситуаций?
Answer from AI
sobes.tech AI
В Spring для обработки исключительных ситуаций можно использовать несколько подходов:
- @ExceptionHandler — аннотация, позволяющая определить метод в контроллере или в классе с аннотацией @ControllerAdvice, который будет обрабатывать определённые типы исключений.
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(ResourceNotFoundException.class)
public ResponseEntity<String> handleNotFound(ResourceNotFoundException ex) {
return ResponseEntity.status(HttpStatus.NOT_FOUND).body(ex.getMessage());
}
}
-
@ControllerAdvice — класс, который централизованно обрабатывает исключения для всех контроллеров.
-
ResponseStatusException — выбрасывание исключения с определённым HTTP-статусом.
-
HandlerExceptionResolver — интерфейс для более низкоуровневой обработки исключений.
-
Использование фильтров и интерсепторов для перехвата исключений на уровне HTTP-запросов.
Чаще всего достаточно использовать @ExceptionHandler вместе с @ControllerAdvice для удобной и централизованной обработки ошибок.