Struts 2 - Arquitectura

Desde un nivel alto, Struts2 es un marco pull-MVC (o MVC2). El patrón Model-ViewController en Struts2 se implementa con los siguientes cinco componentes principales:

  • Actions
  • Interceptors
  • Pila de valor / OGNL
  • Resultados / tipos de resultados
  • Ver tecnologías

Struts 2 es ligeramente diferente de un marco MVC tradicional, donde la acción toma el papel del modelo en lugar del controlador, aunque existe cierta superposición.

El diagrama de arriba muestra el Model, VVer y Controller a la arquitectura de alto nivel Struts2. El controlador se implementa con unStruts2enviar filtro de servlet, así como interceptores, este modelo se implementa con acciones, y la vista es una combinación de tipos de resultados y resultados. La pila de valor y OGNL proporcionan un hilo común que vincula y permite la integración entre los otros componentes.

Aparte de los componentes anteriores, habrá mucha información relacionada con la configuración. Configuración de la aplicación web, así como configuración de acciones, interceptores, resultados, etc.

Esta es la descripción general de la arquitectura del patrón Struts 2 MVC. Repasaremos cada componente con más detalle en los capítulos siguientes.

Solicitar ciclo de vida

Según el diagrama anterior, puede comprender el flujo de trabajo a través del ciclo de vida de la solicitud del usuario en Struts 2 como sigue -

  • El usuario envía una solicitud al servidor para solicitar algún recurso (es decir, páginas).

  • El despachador de filtros examina la solicitud y luego determina la acción adecuada.

  • Se aplican las funciones de interceptor configuradas, como validación, carga de archivos, etc.

  • La acción seleccionada se realiza en función de la operación solicitada.

  • Nuevamente, los interceptores configurados se aplican para realizar cualquier posprocesamiento si es necesario.

  • Finalmente, el resultado es preparado por la vista y devuelve el resultado al usuario.