Publicado el 26 de Mayo del 2018
909 visualizaciones desde el 26 de Mayo del 2018
291,1 KB
4 paginas
Creado hace 14a (07/06/2010)
Tecnologías de Programación Web
Dr. Diego C. Martínez
Servlets y sesiones
Cuando desde un servlet queremos mantener datos para un mismo cliente
entre pedidos (requests) podemos utilizar variables de sesión.
Las variables de sesión son variables que el servidor recordará que
pertenecen a algún cliente en particular, y por lo tanto mantendrá una copia
separada para cada cliente.
Se mantienen agrupadas en un objeto de tipo HttpSession
HttpSession session = req.getSession(true);
Podemos almacenar valores en ese objeto, recuperarlos después,
eliminarlos, etc.
Algunas operaciones:
session.isNew();
session.setAttribute(String nombre, Object valor);
session.getAttribute(String nombre);
session.invalidate();
© Diego C. Martínez - DCIC-UNS
Java Server Pages
Java Server Pages
La tecnología JSP (Java Server Pages) usa tags al estilo XML y scriptlets escritos
en Java para encapsular la lógica que genera el contenido de la página.
Al separar la lógica de el diseño y la presentación, JSP facilita la tarea de construir
aplicaciones basadas en la web.
Permiten incluir directamente código Java en un documento HTML, de la misma
forma que lo permiten otros lenguajes como PHP.
Forman una extensión natural a los servlets. De hecho, luego de un preprocesado,
las páginas JSP terminan siendo nada más y nada menos que un servlet!.
Desde el punto de vista del programador, Servlets y JSP son intercambiables,
dependiendo del balance de carga estática y dinámica del documento a generar.
© Diego C. Martínez - DCIC-UNS
© DCM-DCIC-UNS
1
3
1
Tecnologías de Programación Web
Dr. Diego C. Martínez
Depto de Cs e Ing. de la Computación
Universidad Nacional del Sur
Java Server Pages - ejemplo
Java Server Pages - ejemplo
Java Server Pages - ejemplo
Java Server Pages - ejemplo
HolaVos.jsp
<HTML>
Hola <I> <%= request.getParameter("nombre") %> </I>!
</HTML>
http://localhost/HolaVos.jsp?nombre=Homero
http://localhost/HolaVos.jsp?nombre=Homero
Hola Homero!
Hora.jsp
<%@page import=“java.util.Date”%>
<HTML>
<BODY>
Hora actual: <%= new Date().toString() %> </I>!
</BODY>
</HTML>
http://localhost/Hora.jsp
http://localhost/Hora.jsp
Hora actual: Mon Jul 31 10:55:54 GMT+01:00 2006
© Diego C. Martínez - DCIC-UNS
5
© Diego C. Martínez - DCIC-UNS
Java Server Pages
Java Server Pages
Además de HTML normal, podemos agregar otro tipo de elementos al
documento:
• Elementos de Script (scriptlets): código Java que se convertirá en parte
del servlet resultante luego del preprocesado.
• Directivas: elementos que nos permiten controlar la estructura general del
servlet resultante. Básicamente, son mensajes al contenedor de servlets.
• Acciones: por medio de las cuales especificamos ciertos componentes
que deben ser usados en el documento.
• Tags library: un mecanismo de extensión de marcas para crear tags
personalizados.
Java Server Pages
Java Server Pages
Para simplificar los elementos se puede acceder a algunas variables
predefinidas, como request en el ejemplo anterior.
Existen otros objetos predefinidos o implícitos, con diferentes alcances o
ámbitos:
• Alcance de aplicación: Java Server Page y la aplicación contenedora
tienen objetos de este ámbito.
• Alcance de página: objetos que existen únicamente en la página en la
que están declarados.
• Alcance de petición: existentes durante el tiempo de vida de una
petición (request).
• Alcance de sesión: existentes durante toda la sesión de navegación del
cliente.
© Diego C. Martínez - DCIC-UNS
7
© Diego C. Martínez - DCIC-UNS
6
8
© DCM-DCIC-UNS
1
Tecnologías de Programación Web
Dr. Diego C. Martínez
Depto de Cs e Ing. de la Computación
Universidad Nacional del Sur
Java Server Pages – objetos implícitos
Java Server Pages – objetos implícitos
Alcance de aplicación
application
Alcance de página
config
exception
out
page
pageContext
response
Alcance de petición
request
Alcance de sesión
session
Representa el contenedor que ejecuta la JSP
Opciones de configuración de la JSP
La excepción que se pasa a la JSP
Objeto JSPWriter para salida de texto
this para la instancia actual de la JSP
Permite acceso a objetos implícitos
Representa la respuesta al cliente
Representa la petición del cliente
Representa la información de sesión del cliente
JSP – Secuencias de comandos – scripting
JSP – Secuencias de comandos – scripting
Las secuencias de comandos (scripting) permite incluir código Java
en un documento JSP.
Expresión JSP
<%= expression %>: La Expresión es evaluada y situada en la salida. El
equivalente XML es <jsp:expression> expression
</jsp:expression>. Las variables predefinidas son request,
response, out, session, application, config, y pageContext.
Scriptlet JSP
<% code %>:
Declaración JSP
<%! code %>:
El código se inserta en el método service. El equivalente
XML es: <jsp:scriptlet> code </jsp:scriptlet>.
El código se inserta en el cuerpo de la clase del servlet,
fuera del método service. El equivalente XML es:
<jsp:declaration> code </jsp:declaration>.
© Diego C. Martínez - DCIC-UNS
9
© Diego C. Martínez - DCIC-UNS
JSP – Secuencias de comandos – scripting
JSP – Secuencias de comandos – scripting
…
<body>
<% // iniciar scriptlet
String nombre = request.getParameter( "nombrePila" );
if ( nombre != null ) {
%>
<h1>
</h1>
Hola <%= nombre %>, <br />
¡Bienvenido a las JavaServer Pages!
<% // continuar scriptlet
} // fin de instrucción if
else {
%>
<form action = "bienvenida.jsp" method = "get">
<p>Escriba su nombre de pila y oprima Enviar</p>
<p><input type = "text" name = "nombrePila" />
</p>
</form>
<input type = "submit" value = "Enviar" />
<% // continuar scriptlet
} // fin de instrucción else
%>
</body>
JSP - Acciones
JSP - Acciones
Las acciones permiten el acceso a tareas comunes que se realizan en una
JSP, como interactuar con JavaBeans, incluir contenido de otros recursos o
derivar peticiones.
Las acciones están delimitadas por los tags
<jsp:acción> </jsp:acción>
En donde acción es el nombre de la acción estándar.
Si nada existe entre los dos tags puede usarse la sintaxis abreviada de XML de
elemento vacío
<jsp:acción />
Existen acciones predefinidas (estándar)…
© Diego C. Martínez - DCIC-UNS
11
© Diego C. Martínez - DCIC-UNS
10
12
© DCM-DCIC-UNS
1
Tecnologías de Programación Web
Dr. Diego C. Martínez
Depto de Cs e Ing. de la Computación
Universidad Nacional del Sur
JSP - Acciones
JSP - Acciones
jsp:include
<jsp:include page="relative URL" flush="true"/>
Incluye un fichero en el momento en que la página es solicitada. En algunos
servidores, el fichero incluido debe ser un fichero HTML o JSP, según
determine el servidor.
jsp:useBean
<jsp:useBean att=val*/>
<jsp:useBean att=val*> ... </jsp:useBean>
Encuentra o construye un Java Bean.
Los posibles atributos son:
id="name"
scope="page | request | session | application"
class="package.class"
type="package.class"
beanName="package.class“
JSP - Acciones
JSP - Acciones
jsp:setProperty
<jsp:setProperty att=val*/>
name="beanName"
property="propertyName|*"
param="parameterName"
value="val“
Selecciona las propiedades del bean, bien directamenteo o designando el valor
que viene desde un parámetro de la petición. Los atributos legales son:
jsp:getProperty
<jsp:getProperty name="propertyName" value="val"/>
Recupera y obtiene las propiedades del Bean.
jsp:forward
<jsp:forward page="relative URL"/>
Reenvía la petición a otra página.
© Diego C. Martínez - DCIC-UNS
13
© Diego C. Martínez - DCIC-UNS
14
© DCM-DCIC-UNS
1
Comentarios de: Servlets y sesiones (0)
No hay comentarios