presentacion_JSP

8
JSP JSP Expone: Enrique Martínez Téllez

description

desarrollo de aplicaciones Web con JAva Server Pages

Transcript of presentacion_JSP

Page 1: presentacion_JSP

JSPJSP

Expone: Enrique Martínez Téllez

Page 2: presentacion_JSP

¿Qué es JSP?¿Qué es JSP?Acrónimo de Java Server PagesExtensión de la tecnología de ServletsJSP combina HTML, XML y Java, arrojando

HTML como resultado final (aunque el servidor lo convierte a servlet y lo compila como tal); es una orientación híbrida (mezcla de diseño gráfico y programación en lenguaje de alto nivel)

Page 3: presentacion_JSP

7-9 de noviembre 2007 M.C.E. Beatriz A. Olivares Zepahua

¿Cuándo usarlo?¿Cuándo usarlo?Si genera lo mismo que un servlet, ¿qué sentido

tiene usarlo?◦ Mantiene (en algún grado) el diseño gráfico, lo que hace

más fácil el mantenimiento de la aplicación ◦ Ya que el servlet es una clase normal y podemos pasar a

producción sólo la parte compilada, una forma de combinar el manejo de ambos tipos es: Usar JSP para lo que implica presentación de información Usar servlet para las afectaciones a la base de datos y

validaciones que no requieran visualizar datos, como el login por ejemplo

Page 4: presentacion_JSP

7-9 de noviembre 2007 M.C.E. Beatriz A. Olivares Zepahua

SintaxisSintaxis Directivas

◦ Indican propiedades de la página <%@ page language="java"%> <%@ page import=“edu.aplic.datos.Usuario"%> <%@ page import=“java.io.*"%>

◦ Incluyen archivos <jsp:include page = "arriba.jsp" flush="true"/>

Scriptlets◦ Incluye un fragmento de código Java dentro del JSP

<%-- Comentario --%> <%! String sValor = new String();%> <% java.util.Date date = new java.util.Date(); %>

Expresiones◦ “Imprimen” el valor indicado mezclado con el HTML

Hola, hoy es <%= date%> <br>

Page 5: presentacion_JSP

7-9 de noviembre 2007 M.C.E. Beatriz A. Olivares Zepahua

Sintaxis (cont.)Sintaxis (cont.)

Directivas de librerías de etiquetas◦ Importan las librerías de etiquetas

<%@ taglib uri="/functions" prefix="f" %> Custom tags

◦ Importan librerías de etiquetas predeterminadas, que sirven para asignar variables, iterar sobre colecciones y condicionar la aparición de código HTML <%@ taglib uri=http://java.sun.com/jsp/jstl/core prefix="c" %> <c:forEach var="localeString" items="${locales.localeNames}">

Expresiones en lenguaje de expresiones◦ Obtienen información de las propiedades de un objeto, se usan en

conjunto con JavaBeans o funciones value="${param.txtCve}"

Page 6: presentacion_JSP

7-9 de noviembre 2007M.C.E. Beatriz A. Olivares Zepahua

Objetos ImplícitosObjetos Implícitos

Objeto Uso Clase Base

request Representa el Objeto de Solicitud dentro de un

JSP/Servlet.HttpServletRequest

response Representa el Objeto de Respuesta dentro de un

JSP/Servlet.HttpServletResponse

pageContext Representa el Contexto del JSP/Servlet. PageContext

session Representa la sesión del Usuario en un JSP/Servlet. HttpSession

application Representa el Objeto de aplicación (Contexto) para

un JSP/Servlet.ServletContext

out Representa el Objeto de Escritura (Para enviar a

pantalla) en un JSP/Servlet.JspWriter

config Representa el Objeto de Configuración para un

JSP/Servlet.ServletConfig

page Representa el Objeto del JSP/Servlet en sí. Object

exception Representa el Objeto de errores para un JSP/Servlet. Throwable

Page 7: presentacion_JSP

7-9 de noviembre 2007 M.C.E. Beatriz A. Olivares Zepahua

EjemploEjemploJSP para escribir el clásico Hola Mundo

indicando la fecha actual y el nombre de quien está entrando a la aplicación

Requerimos como mínimo◦Página Web con formulario que tenga campo

de captura y botón de submit; el formulario debe dirigirse hacia el JSP.

◦JSP que escriba Bienvenido xHoy es fecha

Page 8: presentacion_JSP

7-9 de noviembre 2007 M.C.E. Beatriz A. Olivares Zepahua

hola.jsphola.jsp<%@paga language=“java”%><%@page contentType="text/html"%><%@page pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Hola</title> </head> <body> <h1>Bienvenido <%=request.getParameter("txtNombre")%></h1> <br>Hoy es <%=new java.util.Date()%> </body></html>