Назад к вопросам
Junior — Middle
56
Какими подходами к управлению исключениями в Spring Framework ты знаком?
Ответ от нейросети
sobes.tech AI
В Spring Framework для управления исключениями знаком с несколькими подходами:
-
Использование аннотации
@ExceptionHandlerв контроллерах для обработки конкретных исключений и возврата кастомных ответов. -
Глобальная обработка исключений с помощью класса, аннотированного
@ControllerAdvice, где можно централизованно обрабатывать ошибки приложения. -
Переопределение методов в
ResponseEntityExceptionHandlerдля обработки стандартных исключений Spring MVC.
Пример глобального обработчика:
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(ResourceNotFoundException.class)
public ResponseEntity<String> handleNotFound(ResourceNotFoundException ex) {
return ResponseEntity.status(HttpStatus.NOT_FOUND).body(ex.getMessage());
}
@ExceptionHandler(Exception.class)
public ResponseEntity<String> handleGeneral(Exception ex) {
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body("Внутренняя ошибка сервера");
}
}
Такой подход позволяет централизованно управлять ошибками и улучшать качество ответов API.