Download Desarrollo de Aplicaciones Web con JAVA: J2EE y Struts

Document related concepts
no text concepts found
Transcript
Desarrollo de Aplicaciones Web con Java: J2EE y Struts
Temario
Desarrollo de Aplicaciones Web con JAVA: J2EE
y Struts
Abril 2007
1.
Introducción
Se describe a continuación de forma detallada el programa del curso Desarrollo de Aplicaciones Web con Java: J2EE y Struts.
El curso se encuentra organizado en cinco módulos, cada uno de los cuales está formado por varios temas o unidades didácticas.
2.
2.1.
Modulo I
Tema 1: JAVA: Prerrequisitos
En este tema se hace una pequeña introducción al lenguaje Java, con todos
los elementos de dicho lenguaje que serán utilizados a lo largo del curso a modo
de introducción o recordatorio para el alumno.
2.2.
Tema 2: Entorno de Trabajo: J2SDK, Eclipse, Tomcat, MySQL, MySQL Tools, Struts
En este tema se describe paso a paso el proceso de instalación de todas las
aplicaciones que se van a utilizar a lo largo del curso.
J2SDK : Entorno de desarrollo del lenguaje Java. La base para construir
todo tipo de aplicaciones en Java.
Eclipse: IDE de desarrollo de aplicaciones del lenguaje Java que incluye,
además del editor de textos, muchas ayudas y asistentes como ayuda al
desarrollo de aplicaciones.
[email protected]
www.eformatica.com
1
[email protected]
www.eformatica.com
Desarrollo de Aplicaciones Web con Java: J2EE y Struts
Tomcat: Servidor de aplicaciones Java. Se trata del programa que sirve de
intermediario entre nuestras aplicaciones realizadas con Struts y los clientes
que se conectan a ellas a través de Internet.
MySQL: Sistema de Gestión de Base de Datos para almacenar los datos
que utilicen las aplicaciones desarrolladas.
MySQL Tools: Conjunto de herramientas que facilitan la interacción con
MySQL.
Struts: Librerı́as necesarias para desarrollar aplicaciones con Struts.
Todas estas aplicaciones son Software Libre y puede ser obtenido gratuitamente
en la red.
2.3.
Tema 3: J2EE: Servlets
En este tema se describe una de las tecnologı́as básicas sobre la que se sustenta
J2EE: los Servlets. Un servlet es una clase escrita en Java que se va a ejecutar
cuando sea solicitada por un navegador web y como resultado de la misma se
produce una salida que se envı́a a dicho navegador.
2.4.
Tema 4: J2EE: JSP
En este tema se decribe la otra tecnologı́a básica sobre la que se sustenta
J2EE: las Java Server Pages o JSP. Se trata de páginas HTML a la que se les
puede añadir código Java, bien directamente o bién a través de etiquetas.
3.
3.1.
Modulo II
Tema 5: J2EE: JSP-EL y JSTL
En este tema se describen dos elementos standard de ayuda al desarrollo de
páginas JSP
JSP Expression Language: Permite el acceso de forma sencilla a datos almacenados en objetos Java.
JSTL: Como se comentaba anteriormente, uno de los elementos con los que
se construyen las páginas JSP son las etiquetas. La Java Standard Tag Library o JSTL es un conjunto de etiquetas que incluyen funcionalidades como
estructuras condicionales, bucles o internacionalización de los mensajes.
[email protected]
www.eformatica.com
2
[email protected]
www.eformatica.com
Desarrollo de Aplicaciones Web con Java: J2EE y Struts
3.2.
Tema 6: J2EE: Filters
Otro elemento que se puede emplear en el desarrollo de una aplicación web con
J2EE son los Filtros. Un filtro es una clase en java que procesan ciertas peticiones
antes de que lleguen a su destino para tranformar dicha petición, enviarla a otro
destino . . . En este tema se describe como utilizar filtros en aplicaciones J2EE y
cuales son sus usos mas habituales.
3.3.
Tema 7: J2EE: Etiquetas Personalizadas
J2EE permite a los programadores desarrollar sus propias etiquetas para que
sean utilizadas en páginas JSP. En este tema se explican los pasos a segir para
desarrollar etiquetas propias y como utilizarlas en páginas JSP.
3.4.
Tema 8: J2EE: Manejo del Estado
En una aplicación web, la comunicación entre el usuario/cliente y la aplicación
se hace a través de el protocolo HTTP. En este protocolo no se almacena información entre una petición y la siguiente.
En este tema se describe los mecanismos que porporciona J2EE agrupar todas las
peticiones de un mismo cliente y poder almacenar información asociada a dichas
peticiones.
3.5.
Tema 9: J2EE: Aplicación de Ejemplo
En este tema se describe paso a paso el desarrollo de una aplicación de ejemplo
en la que se utilizan la mayorı́a de los elementos descritos los temas anteriores.
4.
4.1.
Modulo III
Tema 10: Ingenierı́a del Software: UML y Patrones
de Diseño para web: MVC2, DAO, VO y Delegate
Uno de los elementos más crı́ticos a la hora de desarrollar una aplicación Web
es la organización de los elementos que la forman. A lo largo de este tema se
detallan las forma más adecuada de organizar dichos elementos.
4.2.
Tema 11: Struts: Visión General de Struts
En este tema se hace una introducción a todos los elementos que forman
Struts y como interaccionan entre si para acabar formando una aplicación web.
[email protected]
www.eformatica.com
3
[email protected]
www.eformatica.com
Desarrollo de Aplicaciones Web con Java: J2EE y Struts
4.3.
Tema 12: Struts: Actions
Uno de los elementos fundamentales de Struts son los Actions. Un Actión es
una clase Java con un método que se va a ejecutar cuando sea solicitada por un
navegador web y como resultado de la misma se produce una salida que se envı́a
a dicho navegador. Se trata de un concepto similar al de Servlet de J2EE, pero
con grandes diferencias en el fondo.
A lo largo de este tema se explica que son los Actions y como utilizarlos en una
aplicación Struts.
4.4.
Tema 13: Struts: Vista: HTML Tags
Struts proporciona a los desarrolladores una serie de etiquetas JSP para facilitar el desarrollo de páginas JSP. En este tema se describen las etiquesta que
se utilizan para escribir formularios web y otros elementos HTML.
4.5.
Tema 14: Struts: Vista: Logic Tags
Struts proporciona a los desarrolladores una serie de etiquetas JSP para facilitar el desarrollo de páginas JSP. En este tema se describen las etiquetas que
se utilizan para escribir expresiones lógicas (alternativas, repetitivas . . . ) en las
páginas JSP.
4.6.
Tema 15: Struts: Vista: Bean Tags
Struts proporciona a los desarrolladores una serie de etiquetas JSP para facilitar el desarrollo de páginas JSP. En este tema se describen las etiquetas que
facilitan el acceso a propiedades de objetos Java e internacionalización.
5.
5.1.
Modulo IV
Tema 16: Struts: Forms
En este tema se describe otro de los pilares básicos de Struts: los Forms. Un
Form es una clase Java que mapea los campos de un formulario a un objeto Java
de forma transparente al programador. Todas las Actions reciben como parámetro
un Form.
5.2.
Tema 17: Struts: Validación de Formularios
Una tarea que se debe realizar en todas las aplicaciones web es comprobar
que los datos que ha introducido el usuario en la aplicación son válidos desde el
punto de vista lógico (Por ejemplo, que las fechas son fechas). En este tema se
[email protected]
www.eformatica.com
4
[email protected]
www.eformatica.com
Desarrollo de Aplicaciones Web con Java: J2EE y Struts
explica el framework Validation que se puede integrar con Struts para validar de
forma sencilla los formularios.
5.3.
Tema 18: Struts: Vista: Tiles
Las Tiles son un mecanismo que permiten definir plantillas de páginas JSP
de manera que varias JSPs puedan compartir ciertos fragmentos y que dichos
fragmentos se declaren una única vez. Permite además, configurar como se van a
organizar dichos fragmentos en pantalla.
En este tema se explica como utilizar Tiles en Struts.
5.4.
Tema 19: Struts: Gestión de Errores
A lo largo de este tema se explica como se pueden gestionar los errores que se
produzcan en la aplicación a través de los mecanismos proporcionados por Struts.
6.
6.1.
Modulo V
Tema 20: Struts: Internacionalización
La internacionalización se puede definir como el proceso de adaptar nuestra
aplicación al idioma o zona geográfica del usuario que utiliza una aplicación.
Abarca desde el idioma de los mensajes hasta el formato de fechas o números.
En este tema se explica como utilizar mecanismos de internacionalización en
aplicaciones Struts.
6.2.
Tema 21: BD: Acceso a Base de Datos
Casi todos las aplicaciones web almacenan los datos que manejan en un Sistema de Gestión de Base de Datos o SGBD. Para los propósitos de este curso se
ha elegido como SGBD MySQL, por ser software libre y por poder ser utilizado
en aplicaciones comerciales dada su robustez y potencia.
A lo largo de este tema se hace una introducción a los SGBD y como pueden ser
utilizados desde aplicaciones Struts.
6.3.
Tema 22: Proyectos de Software Libre para el Desarrollo de Aplicaciones Web: DisplayTag, Jakarta Upload, Jakarta Taglibs, Log4j, JUnit, Maven, JasperReports, Struts Menu y StrutsTestCase
En muchas ocasiones es necesario realizar cierta funcionalidad en una aplicación web que ya ha sido desarrollada en un proyecto de software libre y que,
[email protected]
www.eformatica.com
5
[email protected]
www.eformatica.com
Desarrollo de Aplicaciones Web con Java: J2EE y Struts
nos permite por tanto, ahorrar tiempo de desarrollo.
En este tema se explica como utilizar un grupo de proyectos de software libre que
se utilizan de forma muy habitual en cualquier aplicación web en J2EE. Estos
proyectos son
DisplayTag: Conjunto de etiquetas para páginas JSP que permite mostrar
una lista de resultados permitiendo ordenar y paginar los resultados de
manera automática.
Jakarta Upload : Librerı́a que permite cargar ficheros desde el ordenador del
cliente al servidor.
Jakarta Taglibs: Conjunto de etiquetas para páginas JSP con funcionalidades diversas.
Log4j : Liberı́a de logger (mensajes sobre lo que ocurre internamente en la
aplicación) muy util cuando se debe solucionar un error en una aplicación.
JUnit: Librerı́a para probar el funcionamiento de una clase de manera automática.
Maven: Aplicación para la creación, construcción e instalación de aplicaciones de manera automática.
JasperReports: Conjunto de herramientas que facilitan la realización de
informes a partir de datos almacenados en una base de datos en aplicaciones
Java.
Struts Menu: Librerı́a que permite integrar de forma sencilla menús en
aplicaciones Struts.
StrutsTestCase: Extensión de JUnit que permite probar aplicaciones
basadas en Struts.
6.4.
Tema 23: Struts: Aplicación de Ejemplo
En este tema se describe paso a paso el desarrollo de una aplicación de ejemplo
en la que se utilizan la mayorı́a de los elementos descritos los temas anteriores.
6.5.
Tema 24: Struts: Proyecto
En este tema se describe una aplicación que deberá ser implementada por el
alumno para la superación del curso.
[email protected]
www.eformatica.com
6
[email protected]
www.eformatica.com