Junior — Middle
140
Potresti spiegare lo scopo e l'uso dell'annotazione @ControllerAdvice in Spring?
Le aziende dove è stato chiesto
Risposta dell'AI
sobes.tech AI
Аннотация @ControllerAdvice в Spring используется для глобальной обработки исключений, настройки данных модели и перехвата запросов во всех контроллерах приложения. Это позволяет централизованно обрабатывать ошибки и применять общие настройки, не дублируя код в каждом контроллере.
Например, с помощью @ControllerAdvice можно определить метод, который будет обрабатывать исключения типа Exception во всех контроллерах:
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(Exception.class)
public ResponseEntity<String> handleAllExceptions(Exception ex) {
return new ResponseEntity<>("Произошла ошибка: " + ex.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR);
}
}
Таким образом, при возникновении исключения в любом контроллере, этот метод будет вызван автоматически, обеспечивая единообразную обработку ошибок.