Manejo de excepciones
Manejo de excepciones con @ControllerAdvice, @ExceptionHandler, @ResponseStatus, estandarización de errores
1¿Qué es @ControllerAdvice en Spring MVC?
¿Qué es @ControllerAdvice en Spring MVC?
Respuesta
@ControllerAdvice permite centralizar el manejo de excepciones para todos los controladores de la aplicación. Esta anotación crea un componente global que intercepta las excepciones lanzadas por cualquier @Controller o @RestController. Esto evita duplicar la lógica de manejo de errores en cada controlador y favorece la coherencia de las respuestas de error.
2¿Cómo manejar una excepción específica en un controlador?
¿Cómo manejar una excepción específica en un controlador?
Respuesta
@ExceptionHandler permite definir un método que maneja una o varias excepciones específicas en un controlador o un @ControllerAdvice. El método anotado se invoca automáticamente cuando se lanza la excepción especificada. Es posible devolver un ResponseEntity para controlar el estado HTTP y el cuerpo de la respuesta.
3¿Para qué sirve @ResponseStatus en una clase de excepción?
¿Para qué sirve @ResponseStatus en una clase de excepción?
Respuesta
@ResponseStatus en una excepción personalizada permite mapear automáticamente esta excepción a un código HTTP específico. Cuando se lanza la excepción, Spring devuelve automáticamente el estado HTTP indicado sin necesidad de un @ExceptionHandler. Este enfoque simplifica el código para excepciones simples que corresponden directamente a un estado HTTP.
¿Qué excepción se lanza cuando falla la validación con @Valid?
¿Qué es ProblemDetail en Spring 6+?
+22 preguntas de entrevista
Otros temas de entrevista Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging con SLF4J y Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Bean Validation
Fundamentos de Spring Data JPA
Entidades JPA y relaciones
Consultas JPA
Spring Data Repositories
Fundamentos de Spring Security
Spring Boot Actuator
Pruebas unitarias con JUnit y Mockito
Testing en Spring Boot
Profiles y Environment
RestTemplate y WebClient
Async y Scheduling
Caching con Spring
Spring WebFlux (Reactive)
Transacciones de Spring
Autenticación y autorización avanzadas
JWT y seguridad stateless
OAuth2 y Authorization Server
Spring Boot y Docker
Microservices con Spring
Spring Cloud Config
Optimización del rendimiento
GraalVM Native Images
Domina Spring Boot para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis