Download Java Avanzado

Document related concepts
no text concepts found
Transcript
2
Java Avanzado
Facultad de Ingeniería.
Escuela de computación.
Java Avanzado. Guía 10 3
Introducción
Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el
desarrollo de sus prácticas de laboratorios, haciendo uso de este antes, durante y
después de la práctica, de tal forma que ofrece un método facilitador en su proceso
de enseñanza/aprendizaje durante esta asignatura.
En el desarrollo de esta asignatura se ha designado realizar las prácticas en 16
sesiones semanales de laboratorios, los que incluyen 11 prácticas, dos parciales y un
proyecto final durante los cuales, el estudiante aplicará los conceptos y las técnicas
fundamentalmente necesarias para el desarrollo de aplicaciones y soluciones
utilizando Java como lenguaje de programación.
Todas las guías de laboratorio están estructuradas de la siguiente forma:
- Objetivos
- Materiales y equipos
- Introducción teórica
- Procedimiento
- Bibliografía
- Hoja de evaluación( En caso de que la actividad sea evaluada )
La asignatura Java avanzado ,está dividida en ocho unidades durante el ciclo.
4
Java Avanzado, Guía 10
Facultad: Ingeniería.
Escuela: Computación.
Asignatura: Java Avanzado
Pág
Guía 10. Fundamentos JSTL.
Tabla de Contenido
Contenido ---------------------------------------------------------------------------------------- 5
Objetivos ----------------------------------------------------------------------------------------- 5
Materiales y equipos --------------------------------------------------------------------------- 5
Introducción teórica---------------------------------------------------------------------------- 5
Procedimiento ----------------------------------------------------------------------------------- 7
Investigación ------------------------------------------------------------------------------------- 16
Bibliografía --------------------------------------------------------------------------------------- 16
Java Avanzado. Guía 10 5
Tema: Fundamentos de JSTL.
Contenidos
En esta guía se introducirá al desarrollo de Aplicaciones Web en Java basadas en
JSTL. Se desarrollaran ejemplos básicos en Netbeans donde se muestra el uso de
elementos scripts para la utilización de esta libreria.
Objetivo Específico
a) Desarrollar proyectos Web en Netbeans utilizando los conceptos aprendidos de
JSTL.
b) Comprender las ventajas de las librerías JSTL.
c) Crear aplicaciones con JSTL utilizando JDBC.
Materiales y Equipo
a) Netbeans
b) JDKJava
c) Tomcat
Introducción Teórica
¿Que es JSTL? (JSP Standard Tag Library)
La librería JSTL es un componente dentro de la especificación del Java 2 Enterprise
Edition (J2EE) y es controlada por Sun MicroSystems. JSTL no es más que un conjunto
de librerías de etiquetas simples y estándares que encapsulan la funcionalidad
principal que es usada comúnmente para escribir páginas JSP.
JSTL implementa funciones de uso frecuente en aplicaciones JSP. En concreto
proporciona:
• Cinco bibliotecas de etiquetas JSP.
• Funciones comunes de iteración sobre datos, operaciones condicionales, e
importación de otras paginas.
• Internacionalización y formateo de texto.
• Funciones de manipulación de cadenas.
• Procesamiento de XML.
• Acceso a bases de datos.
• Un lenguaje de expresión para referenciar objetos y sus propiedades sin
necesidad de código Java.
• Validadores de bibliotecas de etiquetas (Tag Library Validators, TLVs).
6
Java Avanzado, Guía 10
Las etiquetas JSTL están organizadas en 5 librerías:
•
core: Comprende las funciones script básicas como loops, condicionales, y
entrada/salida.
•
xml: Comprende el procesamiento de xml
•
fmt: Comprende la internacionalización y formato de valores como de
moneda y fechas.
•
sql: Comprende el acceso a base de datos.
•
Funciones
JSTL requiere un contenedor de JSP 2.0.
Por su simplicidad, solo requiere conocimientos rudimentarios de Java, JSP, y
aplicaciones Web. Cualquier desarrollador puede comenzar a usarlo de forma casi
inmediata; así mismo facilita la referencia a objetos.
Historia de JSTL
Con JSTL se pretendía recopilar las etiquetas JSP más usadas en una biblioteca
estándar que pudiera usarse en todos los contenedores JSP.
La
especificación
JSTL
se
desarrollo
bajo
el
auspicio
del
JCP
[http://www.jcp.org/en/home/index] (Java Community Process, Proceso Comunitario
Java). El JCP es un proceso supervisado por SUN pero abierto a empresas, e
individuos particulares, que guía el desarrollo y aprobación de los estándares para el
lenguaje Java.
Las iniciativas para crear un estándar dentro del proceso JCP se conocen como JSR (Java
Specificacion Request, Petición de Especificación Java). La JSR no 52 se llamó "A
Standard Tag Library for JavaServer Pages", o abreviadamente JSTL. Fue solicitada
originalmente por Eduardo Pelegri-Llopart y Anil Vijendran, empleados de SUN. En
su desarrollo participaron representantes de varias organizaciones (ASF, Adobe, BEA,
y otras).
La especificación JSTL 1.0 fue terminada el 11 de julio de 2002. Unos días después
apareció la primera implementación creada por miembros del proyecto Taglibs de la
fundación Apache.
Java Avanzado. Guía 10 7
Procedimiento
A. Configuración de la aplicación
Bibliografía
1. Crear un proyecto web con nombre guia10 y procurar seleccionar la opción
“Use dedicated folder for storing libraries” (utilizar un directorio dedicado
Guíapara
1 el almacenamiento de librerias):
2. Importar el archivo “javax.servlet.jsp.jstl-1.2.1.jar”. este puede ser descargado
de la siguiente pagina https://jstl.java.net/download.html
3. Agregar a las librerías el driver de mysql (MySQL JDBC Driver).
B. Creación de una pagina JSTL básica
En toda pagina JSP hay que declarar la biblioteca a la que pertenece cada etiqueta
que se utilizará. Puesto que son varias líneas, lo más cómodo es hacer las
declaraciones en un fichero aparte, y luego incluir dicho fichero en las paginas JSP.
Este sistema evita repetir el mismo texto en todas las paginas, y si en el futuro se
añade más bibliotecas, solo se tendrá que modificar un único fichero. Digitar el
código de la página taglibs.jsp con las siguientes declaraciones:
taglibs.jsp
Anadir una pagina JSP al proyecto indexjstl.jsp que importe la anterior jsp usando
una directiva include:
8
Java Avanzado, Guía 10
indexjstl.jsp
Ejecución en navegador
Anadir una pagina JSP al proyecto indexjstl.2jsp que importe la anterior jsp usando
una directiva include, esta JSP realizará pequeñas operaciones con constantes:
Indexjstl2.jsp
Ejecución en navegador
Java Avanzado. Guía 10 9
C. Creación de una pagina JSP con JSTL para el envió de parametros.
La siguiente pagina html permitirá procesar la información enviada en parámetros
por medio de la gestión con JSTL:
parametros.html
10 Java Avanzado, Guía 10
parametros.jsp
Ejecución en navegador
en el siguiente ejemplo se utilizan 2 jsp para el envió y procesamiento de valores en
una aplicación web:
Java Avanzado. Guía 10 11
datosjstl.jsp
procesarc.jsp
Ejecución en navegador
12 Java Avanzado, Guía 10
D. Creación de una pagina JSP para la gestión excepciones.
Con <c:catch> se puede capturar excepciones, sin que se aborte la ejecución de la
página al producirse un error. En el atributo var se indica el nombre de la variable
donde debe guardarse la información de la excepción, se puede saber que se ha
producido un error comprobando que el valor de esa variable no es nulo.
catch.jsp
Ejecución en navegador
Java Avanzado. Guía 10 13
E. Creación de una pagina JSP con acceso a base de datos.
La siguiente pagina JSP a ser creada recupera la información de la tabla employess
de la base de datos db_employees (ver practica de laboratorio 11).
jdbcjstl.jsp
Ejecución en un navegador
14 Java Avanzado, Guía 10
F. Creación de una pagina JSP el manejo de variables en distintos ambitos
La siguiente pagina JSP a ser creada permite guardar información en una variable,
utilizando el tag “c:set”, el cual tiene los siguientes atributos
Para eliminar una variable se puede usar:
<c:remove var="nombreVariable" scope="ambito"/>
Cuando no se especifica ámbito, la etiqueta busca en todos los ámbitos por turno,
desde el más específico al más general (page, request, session, application), hasta
encontrar una variable con ese nombre. Si la variable no se encuentra, la etiqueta
termina sin error.
setjstl.jsp
Java Avanzado. Guía 10 15
Ejecución en un navegador
16 Java Avanzado, Guía 10
Investigación Complementaria
1. Crear una JSP que permita ingresar registros en la tabla employees utilizando JSTL.
utilizando JSTL.
3. Crear una JSP que utilice c:choose, when y otherwise.
Guía
3 una JSP que permita evaluar condiciones con if
2. Crear
Guía 4
Bibliografía
• fíaAprendiendo Java 2 en 21 Días
Guía
3 Laura
Lemay,
• Cómo Programar en Java
Deitel, Harvey M.
Guía 4
fía