Встречается на собеседованиях • сегодня
Как обработать исключение в Spring
В Spring исключения можно обрабатывать с помощью аннотации `@ExceptionHandler` в контроллерах или глобально через `@ControllerAdvice`.
**Локальная обработка в контроллере:**
```java
@RestController
public class MyController {
@GetMapping("/test")
public String test() {
throw new RuntimeException("Error!");
}
@ExceptionHandler(RuntimeException.class)
public ResponseEntity handleException(RuntimeException ex) {
return ResponseEntity.badRequest().body(ex.getMessage());
}
}
```
**Глобальная обработка через `@ControllerAdvice`:**
```java
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(Exception.class)
public ResponseEntity handleAllExceptions(Exception ex) {
return ResponseEntity.internalServerError().body("Server error: " + ex.getMessage());
}
}
```
Также можно использовать `@ResponseStatus` для указания HTTP-статуса при выбрасывании исключения.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы