Contenido
Patrón de diseño MVC
La framework Apache Struts
Instalación
Flujo de control en Struts
Procesamiento de peticiones
Control de errores
Manejo de Formularios
Librerías de etiquetas de Struts
Modelos de desarrollo de aplicaciones web en Java
Los servlets son buenos ejecutando lógica de negocio, pero no son tan buenos presentando información
JSPs son muy buenos presentando pero pésimos introduciendo lógica programática en ellos
La combinación Servlet/JSPs es lo más común hoy en día en el desarrollo de aplicaciones web
Dos arquitecturas:
Model-1: JSPs para presentación y control y JavaBeans para la lógica
Model-2: Model-View-Controller = JavaBeans-JSPs-Servlets
MVC es tan común que se han desarrollado varias infraestructuras en torno a este patrón de diseño:
Apache Struts
Java Server Faces
Spring
Etc…
Arquitectura Model 1
Arquitectura Model 2
Modelo MVC 0
Modelo MVC I
El Controlador (Controller)
Servlet central recibe peticiones, procesa URL recibida y delega procesamiento a JavaBeans
Servlet guarda resultado de procesamiento realizado por JavaBeans en el contexto de la petición, la sesión o la aplicación
Servlet transfiere control a un JSP que lleva a cabo la presentación de resultados
Modelo MVC II
El Modelo (Model)
JavaBeans (o EJBs para aplicaciones más escalables) desempeña el rol de modelo:
Algunos beans ejecutan lógica
Otros guardan datos
Normalmente:
Servlet controlador invoca un método en bean lógico y éste devuelve un bean de datos
Autor de JSP tiene acceso a bean de datos
Modelo MVC III
La Vista (View)
Rol ejecutado por JSPs
Servlet Controlador transfiere control al JSP después de haber guardado en un contexto el resultado en forma de un bean de datos
JSP usa jsp:useBean y jsp:getProperty para recuperar datos y formatear respuesta en HTML o XML
Modelo MVC IV
En resumen:
Los beans o EJBs ejecutan la lógica de negocio y guardan los resultados
Los JSPs proveen la información formateada
Los servlets coordinan/controlan la ejecución de los beans y los JSPs
Frameworks
Las frameworks pueden ser vistas como implementaciones de patrones de diseño que facilitan la reutilización de diseño y código
Dado que MVC ha sido utilizado en muchas aplicaciones web, el desarrollo de frameworks que den soporte a áreas comunes en todas las aplicaciones MVC es necesario
Apache Struts es una de estas frameworks
Aplicaciones basadas en Struts consistirán de:
Código Java
Deployment descriptors que configuran la framework para el uso de nuestra aplicación
Página siguiente |