You are on page 1of 9

Desarrollo de Aplicaciones con Struts

Capitulo I Introducción
 Descripción
 Objetivo
 Justificación
 Delimitaciones y limitaciones
 Supuestos
 Definición de términos

Capitulo II Struts como framework


• ¿Que son los Struts?
• ¿En que consiste el modelo MCV?
• Historia del surgimiento de Struts
• Estado de Arte
• Razones para Usar está tecnología

Capitulo II Estructura de los Struts


• Instalando los componente para Struts
• Los JavaBeans
• Beans ActionForm
• Beans de Lógica de Negocio
• Acceder a Bases de Datos Relacionales

Capitulo III Implementación de Struts


• Prerrequisitos para la implementación de Struts
• Como implementar esta tecnología
• Ventajas al utilizar Struts
• Conclusión.

Bibliografías
Ligas
http://www.programacion.com/java/tutorial/joa_struts/
http://www.programacion.com/java/tutorial/struts/
http://jakarta.apache.org/struts
http://es.wikipedia.org/wiki/Jakarta_Struts
http://www.ati.es/novatica/2001/154/154-22.pdf
http://www.enterate.unam.mxArticulos2006febreroobserva.htm
http://jguru.com/faq/Struts
http://jguru.com/forums/Struts

Libro
Pro Jakarta Struts, Second Edition, by John Carnell and Rob Harrop, Apress © 2004
Jakarta Struts Live by Richard Hightower, Copyright © 2004 by SourceBeat, LLC.
CAPITULO 1. INTRODUCCIÓN
1. Descripción
Este proyecto de investigación (Desarrollo de Aplicaciones con Struts),
surgió como parte de los requisitos de la materia de Investigación de Ingeniería
en la Universidad de Montemorelos.
Struts es un proyecto de tipo OpenSource desarrollado por Apache
Foundation, esta herramienta facilita el desarrollo de de las aplicaciones Web
bajo la plataforma J2EE, implementando el modelo MCV (Modelo Vista
Controlador)que no es mas que un modelo para mantener ordenadas las
aplicaciones Web. Esta herramienta nos permite agrupar varias aplicaciones
en una sola.
En el transcurso de esta investigación, estudiaremos que son los Struts de
donde surgieron como utilizarlos, algunas investigaciones realizadas, entre
otras cuestiones.

2. Objetivos
Nuestra investigación se encuentra basada en le funcionamiento y aplicación
de la herramienta Struts y nuestro principal objetivo al realizar dicha
investigación es a adquirir un conocimiento superior sobre esta herramienta y
poder compartir dicho conocimiento. Esto nos ayudara a enfrentar la
competencia en el mundo laboral, ya que al adquirir conocimientos de las
nuevas tecnologías nos ayudaran a desempeñar un trabajo mas eficiente y con
mayor calidad.

3. Justificación
En la actualidad todo esta basado en aplicaciones Web, las empresas
quieren tener su propia pagina Web, en la que se puedan realizar operaciones,
búsquedas y que estas arrojen el resultado en un tiempo menos y que sean lo
mas correcto posible. Al aprender esta herramienta nos abriremos una ventana
mas de oportunidades para competir en el buscar fuentes de trabajo.

4. Delimitaciones y Limitaciones
Nuestra investigación abarcará lo que es el marco teórico (de donde surgió,
como surgió, y porqué surgió), se estudiará afondo las aplicaciones que tiene
se pueden obtener mediante la herramienta Struts, para esto se requiere tener
ó adquirir conocimientos previos como es le manejo de JSP, JavaBeans, entre
otros, tomando en cuenta esto y el corto tiempo que se tiene para realizar dicha
investigación (aproximadamente 2 meses) nuestra investigación no entrara de
lleno al funcionamiento de estas otras herramientas, estará basada hasta solo
del estudio del funcionamiento de Struts y sus aplicaciones.

5. Supuestos
Nuestra investigación es de tipo documental. Sin embargo este documento
se encargara de que dicha teoría explicada en este documento se encuentre
fundamentada en fuentes literarias reales, y así poder comprobar dicha teoría
con algunas prácticas. Se estudiar como al tener muchos JSP se manipulen
desde una sola aplicación de Struts.

6. Definición de términos
Open Source: Código abierto (del inglés open source) es el término por el que
se conoce al software distribuido y desarrollado en forma libre. Este término
empezó a utilizarse en 1998 por algunos usuarios de la comunidad del software
libre, tratando de usarlo como reemplazo al ambiguo nombre original en inglés
del software libre (free software).

CAPITULO 2. INTRODUCCIÓN A STRUTS


1. ¿Qué es Struts?
Es una herramienta para la facilitación del desarrollo de las aplicaciones
Web bajo la plataforma J2EE, que implementa el modelo MCV (Model view
Controller), que mas adelante explicaremos en que consiste este modelo, el
cual se ha convertido en un estándar muy usado en el mundo del desarrollo en
Java.
Struts permite reducir el tiempo de desarrollo, su carácter de "software
libre" y su compatibilidad con todas las plataformas en donde Java Entreprise
está disponible, lo convierte en una herramienta altamente disponible.
2. ¿En que consiste le modelo MVC?
MVC o Model view Controller es un patrón de diseño aportado
originariamente por el lenguaje SmallTalk a la Ingeniería del Software. El
paradigma MVC consiste en dividir las aplicaciones en tres partes:
• Controlador
• Modelo
• Vistas.
Model describe el objeto de negocio y la lógica asociada. Wiew refleja su
presentación en la pantalla (GUI). MVC estipula que estos dos elementos solo
pueden comunicarse a través de un Controller y, por tanto, están separados
uno del otro. Esto significa, por ejemplo, que es relativamente sencillo modificar
la vista (view) sin que el modelo se vea afectado. La experiencia ha mostrado
que esto es un enfoque muy bueno que hace más económico el desarrollo y,
en un nivel inferior, el mantenimiento de la aplicación.

El controlador es el encargado de redirigir o asignar una aplicación (un


modelo) a cada petición; el controlador debe poseer de algún modo, un "mapa"
de correspondencias entre peticiones y respuestas (aplicaciones o modelo) que
se les asignan.
El modelo seria la aplicación que responde a una petición, es la lógica de
negocio a fin de cuentas.
Una vez realizadas las operaciones necesarias el flujo vuelve al controlador y
este devuelve los resultados a una vista asignada.

¿Que ventajas obtenemos de este modelo? Obviamente una separación total


entre lógica de negocio y presentación. A esto se le pueden aplicar opciones
como el multilenguaje, distintos diseños de presentación,.. etc sin alterar la
lógica de negocio.
La separación de capas como presentación, lógica de negocio, acceso a datos
es fundamental para el desarrollo de arquitecturas consistentes, reutilizables y
más fácilmente mantenibles, lo que al final resulta en un ahorro de tiempo en
desarrollo en posteriores proyectos.
En el lenguaje Java disponemos de una clase muy sencilla para implantar el
modelo MVC: la clase Observer, Observable del paquete útil. Aunque esa
implementación del MVC con esas clases se podría hacer a un nivel muy
simple de interacción entre unas pocas clases. En este caso, mediante Struts
se aplica el MVC en toda una aplicación Web convencional.

3. Historia del Surgimiento de Struct.

Cuando se inventaron los Servlets Java, muchos programadores se


dieron cuenta de que eran una Buena Cosa. Eran más rápidos y más potentes
que el CGI estándard, portables, y extensibles infinitamente.

Pero escribir infinitas sentencias println() para enviar HTML al navegador era
tirano y problemático. La respuesta fueron las JavaServer Pages, que nos
dejaron escribir servlets dentro de ellas. Ahora los desarrolladores podían
mezclar fácilmente HTML con código Java, y tener todas las ventajas de los
servlets.

Las aplicaciones web Java se convirtieron rápidamente en "centradas-en-JSP".


Esto, por sí sólo no era en una mala cosa, pero hacían poco por resolver
problemas de control de flujo y otros problemas de las aplicaciones Web.

Muchos desarrolladores inteligentes se dieron cuenta que las JavaServer


Pages Y y los servlets se podrían usar juntos para desplegar aplicaciones
web. Los servlets podrían ayudar con el control de flujo, y las JPSs podrían
enfocarse en el negocio odioso de escribir HTML. Usar JSP y servlets juntos se
ha dado ha conocer como el Modelo 2 (cuando usar sólo JSPs era el Modelo
1).
Por supuesto, no hay nada nuevo bajo el Sol (Sun)... y muchos han apuntado
rápidamente que el Modelo 2 de JSPs sigue el clásico patrón de diseño
Modelo-Vista-Controlador de SmallTalk. Ahora es muy común usar los
terminos Modelo 2 y MVC indistintamente.

El proyecto Struts lo lanzó en Mayo del 2000, Craig R. McClanahan para


proporcionar un marco de trabajo MVC estándard a la comunidad Java. En
Julio del 2001, se liberó Struts 1.0, e IOHO, el modelo 2 de desarrollo Java
nunca será lo mismo.

El más conocido de todos los frameworks MVC es Struts . La historia de Struts


es larga, y su presencia continuada durante muchos años hace que sea el
framework

• Mayo de 2000. Struts 0.5. Craig R. McClanahan dona el código a


Apache
• Junio de 2001. Struts 1.0. Versión inicial.
• Junio de 2003. Struts 1.1. Commons.
• Diciembre de 2004. Struts 1.2. Wildcard.
• 2006. Struts 1.3. Reorganización en subproyectos

Struts Component Framework (Shale) está basado (se apoya) en las siguientes
tecnologías:

• Java Runtime Environment (JRE) 1.4 or later.


• Servlet API 2.4 or later. (*)
• JavaServer Pages 2.0 or later. (*)
• JavaServer Faces 1.1 or later.
• JSP Standard Tag Library (JSTL) 1.1 or later.
• Apache Commons BeanUtils 1.7 or later.
• Apache Commons Chain 1.0 or later.
• Apache Commons Digester 1.7 or later.
• Apache Commons Logging 1.0.4 or later.
4. Estado del Arte
Estos son algunos de las iniciativas que se han desarrollado alrededor del
mundo con respecto al funcionamiento y aplicaciones de las herramientas
Struts.

Struts se desarrollaba como parte del proyecto Jakarta de la Apache Software


Foundation, pero actualmente es un proyecto independiente conocido como
Apache Struts.
En la Actualidad Existen muchos Estudios sobre esta tecnología, aunque es
una tecnología nueva se a implementado muy rápidamente.
Investigando acerca de esto encontré un estudio que se realizo al aplicar Struts
en un banco suizo, menciona las grandes ventajas que se han obtenido. Mas
sin embargo en nuestro entorno universitario no se ha estudiado mucho acerca
de esto.
http://www.ati.es/novatica/2001/154/154-22.pdf

5. Razones para utilizar esta tecnología.

Existen muchas razones para utilizar esta tecnología, la principal es que al


hacer una aplicación Web se ahorra mucho tiempo y espacio. Además Struts
es una herramienta Open Source (código de fuente abierto).
Incluso teniendo en cuenta que Struts es un producto totalmente nuevo, da la
impresión de ser altamente estable. Los fallos son rápidamente localizados y
solucionados puesto que el código fuente esta. Siendo examinado
constantemente.
Esta tecnología cuenta con una gran documentación especial mente en su
página principal. Encontramos fácilmente un gran número de artículos,
recomendaciones, instrucciones y ejercicios en relación con Struts.
El código Struts puede ser modificado, sin embargo, si uno quiere mantener la
posibilidad de posteriores migraciones a nuevas versiones de Struts sin
grandes problemas, no es recomendable hacer modificaciones permanentes en
el código Struts.
CAPITULO 3 Estructura de los Struts

Instalando los componente para Struts

Descargando y configurando Struts


• Descargando el archivo zip de Struts
– Iniciar en http://jakarta.apache.org/site/binindex.cgi, o seguir el link de
http://jakarta.apache.org/struts/.
• Descomprimir dentro de un directorio de su preferencia
– Por ejemplo, descargar dentro de C:\jakarta-struts-1.2.4. Hacer referencia a
esta localizacion como struts_install_dir.
• Actualizar su CLASSPATH
– Agregar struts_install_dir/lib/struts.jar a el CLASSPATH usado por su
compilador o IDE (no su servidor)
• Install an XML parser
– If you have JDK 1.4 or Apache Tomcat, this step is not necessary,
since they already come with an XML parser. But, if you use JDK
1.2 or 1.3 with another server, you might need to obtain the XML
parsing libraries. Here are two good sources:
• http://xml.apache.org/
• http://java.sun.com/xml/

Si usted tiene JDK 1.4 o Apache tomcat, este paso no es necesario.


(Traducir esta parte)