Чем global exception handling в Spring отличается от try/catch в каждом контроллере и когда что выбрать?
Что хотят услышать интервьюеры:
Сравнение: global exception handling в Spring стоит сравнивать с try/catch в каждом контроллере по критериям читаемости, безопасности, производительности, тестируемости и поддержки командой.
Ответ:
Когда выбирать global exception handling в Spring: когда его свойства прямо соответствуют задаче: централизует mapping ошибок API в HTTP response.
Слабый ответ: “так принято в Spring/Java”. На собеседовании лучше объяснить ограничения и цену выбора.
@RestControllerAdvice class ApiExceptionHandler { ... }