Что такое Обработка исключений?

Ответ

@RestControllerAdvice + @ExceptionHandler. ErrorDto с code, message, timestamp. HTTP-статусы: 400 (валидация), 404 (не найдено), 409 (бизнес-конфликт), 500 (непредвиденные). MethodArgumentNotValidException для ошибок @Valid отдаёт 400.

Разбор: Глобальная обработка строится на @RestControllerAdvice с методами @ExceptionHandler, возвращающими единый ErrorDto и корректные статусы: 400 для ошибок валидации (MethodArgumentNotValidException при @Valid), 404 для отсутствия ресурса, 409 для бизнес-конфликта, 500 для непредвиденных. Ловушка дистракторов — в перепутанных кодах (404 для конфликта, 400 для not found) и неверном исключении (ConstraintDeclarationException вместо MethodArgumentNotValidException). @RestControllerAdvice без @ExceptionHandler ничего не перехватывает сам по себе.

Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.

Заказать гайд Пройти тест
новые гайды и свежие вопросы с собесов — первыми в Telegram Смотреть гайды Подписаться