Repaso
English
Spring, JPA y Java WebIntermedioSPR-26

¿Cómo fluye una petición por Spring MVC?

Opciones

  1. El navegador llama directamente al método del controlador
  2. DispatcherServlet asigna la petición a un controlador (Opción correcta)
  3. La base de datos recibe primero la petición y la reenvía
  4. La petición se guarda en una cola y se procesa más tarde

Respuesta

El servidor embebido (Tomcat) la recibe, el DispatcherServlet (front controller) la asigna a un método de controlador, que llama a los servicios; el resultado se convierte a JSON y se devuelve

Por qué

  1. El servlet container embebido (Tomcat) recibe la petición HTTP.
  2. Se ejecutan los filtros (seguridad, logging).
  3. El DispatcherServlet es el único punto de entrada: encuentra qué método de controlador gestiona esa URL y ese método HTTP.
  4. Se resuelven los argumentos (@PathVariable, @RequestBody con Jackson) y se ejecuta el controlador, que llama a servicios y repositories.
  5. El valor devuelto se convierte (normalmente a JSON) y se escribe en la respuesta; las excepciones van a @ControllerAdvice.

Recuerda

Tomcat, filtros, DispatcherServlet, controlador, servicio, repository.

Términos clave

Practica esta pregunta en Repaso