Frameworks
2007
1 2 3 4 5 6 7
MVC Primer proyecto Struts Formulario JSP Internacionalización ActionForm Action Validación
2
© everis- CONFIDENCIAL DERECHOS RESERVADOS
MVC
• MVC: Model-View-Controller. • Es un patrón de diseño de software. • Separa los datos (modelo) de una aplicación, la interfaz de usuario, y la lógica de control en tres componentes distintos.
3
©everis- CONFIDENCIAL DERECHOS RESERVADOS
MVC
Model
• Esta es la representación específica del dominio de la información sobre la cual funciona la aplicación. • El modelo es otra forma de llamar a la capa de datos. • La lógica de dominio añade significado a los datos; por ejemplo, calculando si hoy es el cumpleaños del usuario o los totales, impuestos en un carrito de la compra.
4
© everis-CONFIDENCIAL DERECHOS RESERVADOS
MVC
View
• Este presenta el modelo en un formato adecuado para interactuar. • Usualmente un elemento de interfaz de usuario.
5
© everis- CONFIDENCIAL DERECHOS RESERVADOS
MVC
Controller
• Este responde a eventos, usualmente acciones del usuario e invoca cambios en el modelo y probablemente en la vista. • Muchas aplicaciones utilizan unmecanismo de almacenamiento persistente (como puede ser una base de datos) para almacenar los datos. • MVC no menciona específicamente la capa de acceso a datos.
6
© everis- CONFIDENCIAL DERECHOS RESERVADOS
MVC
Funcionamiento
7
© everis- CONFIDENCIAL DERECHOS RESERVADOS
MVC
Funcionamiento
1. El usuario interactúa con la interfaz de usuario de alguna forma (por ejemplo, el usuariopulsa un botón, enlace). 2. El controlador recibe (por parte de los objetos de la interfaz-vista) la notificación de la acción solicitada por el usuario. El controlador gestiona el evento que llega. 3. El controlador accede al modelo, actualizándolo, posiblemente modificándolo de forma adecuada a la acción solicitada por el usuario (por ejemplo, el controlador actualiza el carro de la compra delusuario).
8
© everis- CONFIDENCIAL DERECHOS RESERVADOS
MVC
Funcionamiento (Cont.)
4. El controlador delega a los objetos de la vista la tarea de desplegar la interfaz de usuario. 5. La vista obtiene sus datos del modelo para generar la interfaz apropiada para el usuario donde se reflejan los cambios en el modelo (por ejemplo, produce un listado del contenido del carro de la compra). 6. Elmodelo no debe tener conocimiento directo sobre la vista. 7. La interfaz de usuario espera nuevas interacciones del usuario, comenzando el ciclo nuevamente.
9
© everis- CONFIDENCIAL DERECHOS RESERVADOS
MVC
Implementaciones
• • • • • • • • • • •
JavaServer Faces (JSF). Struts. Webwork2. Xforms. WebObjects. Fusebox. Mach-II. Maypole. Catalyst. Wicket. Spring.
• • • • • • • • • •Tapestry. ZNF. Phrame. Symfony. Apache Cocoon. Ruby on Rails. TurboGears. Model Glue For ColdFusion. Django. Zephyr Framework (PHP).
10
© everis- CONFIDENCIAL DERECHOS RESERVADOS
MVC
Struts
• Struts es una implementación de MVC orientada al desarrollo de aplicaciones WEB. • Struts maneja los formularios WEB como objetos Java del tipo JavaBean™. • Struts permite validar los formularios ymanejar los errores. • Además ofrece servicios adicionales como:
– DataSource. – Internacionalización de la aplicación. – Configuariones varias.
11
© everis- CONFIDENCIAL DERECHOS RESERVADOS
1 2 3 4 5 6 7
MVC Primer proyecto Struts Formulario JSP Internacionalización ActionForm Action Validación
12
© everis- CONFIDENCIAL DERECHOS RESERVADOS
Primer proyecto Struts
Instalación• http://struts.apache.org/downloads.html. • Versión en estos apuntes: Struts_1.2.9. • Bibliotecas a incluir:
– struts.jar. – commons-beanutils.jar. – commons-digester.jar. – commons-logging.jar. – jakarta-oro.jar.
13
© everis- CONFIDENCIAL DERECHOS RESERVADOS
Primer proyecto Struts
Instalación
• En web.xml agregar el Servlet ActionServlet.
Todas las URLs terminadas con “.do”...
Regístrate para leer el documento completo.