Обработка ошибок
Обработка ошибок в Spring-приложении простыми словами: модель ошибок (доменные vs технические), единый обработчик @RestControllerAdvice и типичные грабли с исключениями.
Компактный раздел про обработку ошибок в backend-приложении: как устроить модель ошибок, собрать обработку в одном месте и не наступить на типичные грабли с исключениями. Дополняет разбор REST-ошибок (Problem Details) и отказоустойчивости.
- Модель ошибок приложения — Доменные ошибки и технические сбои — в чём разница, почему нужны типизированные исключения и как они добираются до клиента в Spring Boot.
- Единый обработчик ошибок — Как @RestControllerAdvice и @ExceptionHandler превращают исключения в HTTP-ответы из одного места — без try/catch в каждом контроллере. Маппинг доменных исключений и логирование.
- Типичные ошибки в обработке исключений — Проглоченный catch, потеря стектрейса, исключение как управление потоком, проглоченный InterruptedException, дублирование логов — как не допустить и что делать вместо.