Explícame paso a paso cómo construir un endpoint REST en Spring Boot, desde la petición hasta la base de datos.
Respuesta
- Controlador (
@RestController): mapea la URL, lee la entrada (@PathVariable, @RequestBody con @Valid), devuelve un DTO y el estado correcto (ResponseEntity). - Servicio (
@Service): reglas de negocio y límites de @Transactional. - Repository (
JpaRepository): acceso a la base de datos; entidad con @Entity. - Manejo de errores:
@RestControllerAdvice convierte las excepciones en respuestas 400/404/409. - Config:
application.yml, perfiles, secretos desde variables de entorno. - Tests: unit tests con Mockito para los servicios,
@WebMvcTest para los controladores, @DataJpaTest o Testcontainers para los repositories. - Operaciones: endpoint de salud de Actuator, logs estructurados.
Practica esta pregunta en Repaso