Desarrollo de Aplicaciones Web con JAVA: J2EE y Struts

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Desarrollo de Aplicaciones Web con JAVA: J2EE y Struts"

Transcripción

1 Temario Desarrollo de Aplicaciones Web con JAVA: J2EE y Struts Abril 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. Modulo I 2.1. 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 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. 1

2 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 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 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. Modulo II 3.1. 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. 2

3 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 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 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 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. Modulo III 4.1. 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 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. 3

4 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 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 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 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. Modulo IV 5.1. 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 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 4

5 explica el framework Validation que se puede integrar con Struts para validar de forma sencilla los formularios 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 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. Modulo V 6.1. 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 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 Tema 22: Proyectos de Software Libre para el Desarrollo de Aplicaciones Web: DisplayTag, Jakarta Upload, Jakarta Taglibs, Log4j, JUnit, Maven, Jasper- Reports, 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, 5

6 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 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 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. 6