Встречается на собеседованиях • сегодня

Как обработать ошибку в Spring Web

В Spring Web ошибки можно обрабатывать с помощью `@ControllerAdvice` и `@ExceptionHandler`. Это позволяет централизованно перехватывать исключения и возвращать клиенту структурированный ответ. Пример: ```java @RestControllerAdvice public class GlobalExceptionHandler { @ExceptionHandler(ResourceNotFoundException.class) public ResponseEntity handleResourceNotFound(ResourceNotFoundException ex) { ErrorResponse error = new ErrorResponse( "NOT_FOUND", ex.getMessage(), HttpStatus.NOT_FOUND.value() ); return new ResponseEntity<>(error, HttpStatus.NOT_FOUND); } @ExceptionHandler(Exception.class) public ResponseEntity handleAllExceptions(Exception ex) { ErrorResponse error = new ErrorResponse( "INTERNAL_ERROR", "Something went wrong", HttpStatus.INTERNAL_SERVER_ERROR.value() ); return new ResponseEntity<>(error, HttpStatus.INTERNAL_SERVER_ERROR); } } ``` Ключевые моменты: - `@ControllerAdvice` перехватывает исключения со всех контроллеров - `@ExceptionHandler` указывает, какие исключения обрабатывать - Можно возвращать кастомные DTO с деталями ошибки - Можно задавать разные HTTP-статусы для разных ошибок - Порядок обработки: сначала специфичные исключения, потом общие
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы