Daripada membalut setiap kaedah controller dalam try/catch, Spring membolehkan anda memusatkan pengendalian ralat dalam satu kelas yang dianotasi @ControllerAdvice (atau @RestControllerAdvice). Kaedah yang ditanda @ExceptionHandler menangkap pengecualian yang dilontar di mana-mana dalam controller anda dan mengubahnya menjadi respons HTTP yang konsisten.
Satu pengendali global
{
ApiError {
(, ex.getMessage());
}
ApiError {
ex.getBindingResult().getFieldErrors().stream()
.map(e -> e.getField() + + e.getDefaultMessage())
.collect(Collectors.joining());
(, msg);
}
}
