Versiones comparadas

Clave

  • Se ha añadido esta línea.
  • Se ha eliminado esta línea.
  • El formato se ha cambiado.

...

Spring Boot ofrece varios mecanismos para manejar excepciones y controlar las respuestas de error. Aunque todos son válidos, el enfoque recomendado es centralizar la gestión de errores mediante @ControllerAdvice. A partir de este mecanismo principal, el resto se entienden como herramientas complementarias.

  • ControllerAdvice

...

@ControllerAdvice permite interceptar y manejar excepciones de forma global, sin necesidad de duplicar lógica en cada controlador.

Objetivos

      • Centralizar la gestión de errores.

      • Garantizar un modelo de respuesta uniforme.

      • Manejar excepciones propias y de terceros.

Características

      • Se aplica a todos los controladores.

      • Permite devolver cualquier estructura de respuesta (JSON estándar, modelo propio, etc.).

      • Facilita la trazabilidad y el mantenimiento.

La gestión centralizada y global de todas las excepciones en nuestra aplicación se consigue utilizando la anotación @RestControllerAdvice, que actúa como un punto único para interceptar y manejar cualquier error que se produzca en los controladores.

Info

Es posible declarar varios RestControllerAdvice para dividir el manejo de excepciones por paquetes, clases, anotaciones, etc. 
Por defecto, si no se pasan parámetros en la declaración de la notación @RestControllerAdvice, los manejadores serán comunes a toda la aplicación.

...