Junior — Middle
Pode explicar para que é que é usada a anotação @ExceptionHandler no Java Spring?
sobes.tech IA
Resposta da IA
A anotação @ExceptionHandler no Spring Java é usada para lidar com exceções que ocorrem nos controladores. Ela permite definir um método que será chamado quando ocorrer um tipo específico de exceção, ajudando a tratar erros de forma centralizada e a retornar respostas compreensíveis ao cliente.
Exemplo de uso:
@Controller
public class MyController {
@GetMapping("/example")
public String example() {
if (true) {
throw new IllegalArgumentException("Argumento incorreto");
}
return "ok";
}
@ExceptionHandler(IllegalArgumentException.class)
public ResponseEntity<String> handleIllegalArgument(IllegalArgumentException ex) {
return ResponseEntity
.status(HttpStatus.BAD_REQUEST)
.body("Erro: " + ex.getMessage());
}
}
Neste exemplo, se o método example lançar uma IllegalArgumentException, o método com a anotação @ExceptionHandler interceptará essa exceção e retornará uma resposta ao cliente com o código 400 e uma mensagem de erro.