Patron Mvc Struts 1 y 2

10,421 views

Published on

Esta fue una pequeña charla que dicté en el Labortatorio de Investigación de Software en la Universidad Tecnológica Nacional - Facultad Regional Córdoba

Published in: Technology, Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
10,421
On SlideShare
0
From Embeds
0
Number of Embeds
2,702
Actions
Shares
0
Downloads
330
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Patron Mvc Struts 1 y 2

  1. 1. El Patrón MVC Struts versión 1 y 2 Ing. Pablo Frias http://mundojava.blogspot.com http://osum.sun.com/group/utnfrc – 2009 –
  2. 2. Agenda <ul><li>Java para aplicaciones web </li></ul><ul><li>Arquitectura de una aplicación web </li></ul><ul><li>El patrón MVC </li></ul><ul><li>Struts 1 </li></ul><ul><li>Struts 2 </li></ul>
  3. 3. Java para aplicaciones web <ul><li>Existen 3 formas de realizar aplicaciones web en java: </li></ul><ul><ul><li>Usando Applets </li></ul></ul><ul><ul><li>Usando la capa web de JEE </li></ul></ul><ul><ul><li>Usando una mezcla entre ambas </li></ul></ul>
  4. 4. Herramientas para desarrollo web <ul><li>Servlets </li></ul><ul><li>JSP </li></ul><ul><ul><li>Directivas </li></ul></ul><ul><ul><li>Expresiones </li></ul></ul><ul><ul><li>Scriptlets </li></ul></ul><ul><li>Expression Language </li></ul><ul><li>JSTL (Java Standard Tags Library)‏ </li></ul>
  5. 5. Ciclo de Vida de Aplicaciones Web <ul><li>El cliente envía una petición de servicio a la aplicación por medio de una red con protocolo HTTP. </li></ul><ul><li>El Servidor de aplicaciones verifica la procedencia y la existencia de la aplicación. Si existe, le pasa la responsabilidad de manejar la petición. </li></ul><ul><li>La aplicación retorna un resultado en formato HTTP por medio del Servidor. </li></ul>
  6. 6. ¿Cómo encaro una aplicación web? <ul><li>¿Centralizar o Descentralizar las peticiones? </li></ul><ul><li>¿Dividir en capas mi software? </li></ul><ul><li>¿Usar patrones? ¿Cuáles? </li></ul>
  7. 7. El patrón MVC
  8. 8. Frameworks - Templates - Herramientas
  9. 9. Apache Struts <ul><li>Framework open source </li></ul><ul><li>Implementa el patrón MVC </li></ul><ul><li>El objetivo es “ordenar” nuestra aplicación y facilitar su desarrollo y mantenimiento </li></ul><ul><li>El componente primario de Struts es un Servlet. </li></ul>
  10. 10. Struts - Arquitectura
  11. 11. Características <ul><li>Un sólo archivo de configuración (struts-config.xml) </li></ul><ul><li>Cada acción se modela como un Action </li></ul><ul><li>Cada formulario se modela como un ActionForm </li></ul><ul><li>Cada pantalla (JSP) debe utilizar tags de Struts </li></ul><ul><li>Es posible (y conveniente) utilizar archivos de propiedades para I18N </li></ul>
  12. 12. Ejemplo
  13. 13. Desventajas de Struts 1 <ul><li>Si no está soportado por el IDE, puede resultar tedioso mantener la configuración. </li></ul><ul><li>Para una sola pantalla debemos crear por lo menos 2 clases (ActionForm y Action) </li></ul><ul><li>El manejo de Actions como hilos de ejecución pueden generar problemas. </li></ul>
  14. 14. Struts 2 <ul><li>Nace a partir de la unión del framework WebWork con Struts 1 </li></ul><ul><li>Entre las mejoras: </li></ul><ul><ul><li>No hacen falta más ActionForms </li></ul></ul><ul><ul><li>No hace falta extender de Action </li></ul></ul><ul><ul><li>Mejoras en los tags </li></ul></ul><ul><ul><li>Archivo de configuración opcional y con posibilidad de dividirlo en paquetes </li></ul></ul>
  15. 15. Arquitectura http://struts.apache.org/2.1.6/docs/the-struts-2-request-flow.html
  16. 16. Ejemplo
  17. 17. Fuentes <ul><li>http://struts.apache.org/2.x/ </li></ul><ul><li>http://struts.apache.org/ </li></ul><ul><li>http://osum.sun.com/group/utnfrc </li></ul><ul><li>Facebook: Lis Utn-frc </li></ul><ul><li>Jakarta Struts – Chuck Cavaness </li></ul><ul><li>Programación web java – Andrés Martinez </li></ul><ul><li>Jakarta Struts Live – Rick Hightower </li></ul>
  18. 18. ¿Preguntas?

×