PDF de programación - Introducción a JSP

Imágen de pdf Introducción a JSP

Introducción a JSPgráfica de visualizaciones

Publicado el 19 de Agosto del 2019
173 visualizaciones desde el 19 de Agosto del 2019
4,2 MB
21 paginas
Creado hace 14a (20/10/2004)
© Juan Carlos García Candela
Actualizado octubre 2004
Este documento es de libre distribución y está prohibida su alteración.

Introducción a JSP

1. Elementos de JSP

1.3.1. Inclusión de páginas
1.3.2. Transferencia de control

2. Objetos implícitos

1.1. Código Java

1.1.1. Expresiones
1.1.2. Scriptlets
1.1.3. Declaraciones

1.2. Directivas

1.2.1. page
1.2.2. include
1.2.3. taglib

1.3. Acciones

2.1. request
2.2. response
2.3. out
2.4. session
2.5. application
2.6. config
2.7. pageContext
2.8. page

3. Comunicación entre formularios HTML y páginas JSP

3.1. Conceptos básicos
3.2. GET y POST
3.3. Elementos de formulario

3.3.1. Campos de texto.
3.3.2. Selectores ON/OFF. Checkbox.
3.3.3. Parámetros ocultos. Tipo hidden.
3.3.4. Botones radio.
3.3.5. Selecciones. Etiquetas <select> y <option>.
3.3.6. Codificación directa en el URL.

4. Introducción a JSTL



4.1. Expression language (EL).
4.2. La librería core.
4.2.2. out
4.2.3. set
4.2.6. forEach y forTokens .
4.2.7. redirect
4.2.8. Control de errores con catch
4.3. La librería formatting
4.3.1. formatDate
4.3.2. formatNumber.

4.4. Funciones EL.

5.- Introducción a Tomcat


5.1. Instalación
5.2. Ejecución
5.3. Directorios
5.4. Arranque paso a paso
5.5. Acceder a una clase Java desde un JSP
5.6. Crear un webapp

Apéndice. Material de referencia en Internet



Introducción a JSP

JavaServer Pages (JSP) (http://java.sun.com/jsp) es una tecnología basada en el lenguaje Java que
permite incorporar contenido dinámico a las páginas web. Los archivos JSP combinan HTML con
etiquetas especiales y fragmentos de código Java.
El código fuente de una página JSP puede contener:


- Directivas: Indican información general de la página, como puede ser importación de clases,

página a invocar ante errores, si la página forma parte de una sesión, etc.

Scriptlets: Código Java embebido.

- Declaraciones: Sirven para declarar métodos o variables.
-
- Expresiones: Expresiones Java que se evalúan y se envían a la salida.
- Tags JSP: Etiquetas especiales que interpreta el servidor.


Un ejemplo simple de archivo JSP sería:


<%@page import="java.util.*"%>
<%! String cadena="Bienvenidos a JSP"; %>
<html>
<body>



</body>
</html>

<%= cadena %>
<br>
<% out.println(new Date()); %>


JSP tiene bastantes ventajas frente a otras orientaciones, como ASP o PHP. Al ser JSP una
especificación, podemos elegir entre diversas implementaciones, comerciales o gratuitas, sin tener que
depender de un proveedor en particular. Quizá la ventaja fundamental es que tenemos toda la potencia del
lenguaje Java a nuestro alcance, con sus ventajas como reusabilidad, robustez, multiplataforma, etc.


1. Elementos de JSP

1.1. Código Java

Podemos insertar código Java dentro de JSP de tres formas: Expresiones, scriptlets y declaraciones.

1.1.1. Expresiones: Son fragmentos de código Java, con la forma <%= expresión %> que se evalúan
y se muestran en la salida del navegador. En general, dentro de una expresión podemos usar cualquier
cosa que usaríamos dentro de un System.out.print(expr);
Ejemplos:



1.1.2. Scriptlets: Son fragmentos de código Java con la forma <% código %>, en general, podemos
insertar cualquier código que pudiéramos usar dentro de una función Java. Para acceder a la salida del
navegador, usamos el objeto implícito out.
Ejemplos:

<table>

<%= "Tamaño de cadena: "+cadena.length() %>
<%= new java.util.Date() %>
<%= Math.PI*2 %>

<% for (int i=0;i<10;i++)
{
%>
<tr><td> <%=i%> </td></tr>
<% }
%>
</table>



1

out.println("<tr><td>"+i+"</td></tr>");

out.println("<table>");
for (int i=0;i<10;i++)

out.println("</table>");

String parametro1=request.getParameter("parametro1");
String parametro2=request.getParameter("parametro2");
MiClase miClase=new MiClase();
String salida=miClase.procesa(parametro1, parametro2);

<%



%>

Si observamos los dos ejemplos anteriores (que hacen lo mismo), podría parecer que la segunda opción
es más deseable, pero en general hay que evitar el uso de out.println() para elementos HTML. En
un proyecto en el que trabajen programadores y diseñadores conjuntamente, hay que separar presentación
y código tanto como sea posible.

Dentro de un scriptlet podemos usar cualquier librería de Java, incluyendo las propias, lo cual hace que
resulte muy sencillo construir interfaces web de entrada y salida para nuestras clases.

<%



%>
<%= salida %>

Para introducir comentarios en JSP, usaremos las marcas <%-- comentario --%>, dentro de un
scriptlet o declaración podemos usar comentarios siguiendo la sintaxis de Java.

<%-- Comentario JSP --%>

<!-- Comentario HTML -->

<%


%>


la forma <%!
1.1.3. Declaraciones: Contienen declaraciones de variables o métodos, con
declaración %>. Estas variables o métodos serán accesibles desde cualquier lugar de la página JSP.
Hay que tener en cuenta que el servidor transforma la página JSP en un servlet, y éste es usado por
múltiples peticiones, lo que provoca que las variables conserven su valor entre sucesivas ejecuciones.

Ejemplos:

<%! int numeroAccesos=0; %>
<html>


// Comentario
/* Comentario */

<body>

<%=
"La página ha sido accedida "+(++numeroAccesos)+
" veces desde el arranque del servidor"
%>
</body>

</html>

<%! java.util.Date primerAcceso=new java.util.Date(); %>
<html>
<body>



</body>
</html>


El primer acceso a la página se realizo en:
<%= primerAcceso %>



2

<%= ahora() %>

return ""+new java.util.Date();

<%!
private String ahora()

{



}

%>
<html>
<body>



</body>
</html>

1.2. Directivas

Las directivas son elementos que proporcionan información al motor JSP, e influirán en la estructura del
servlet generado. Hay tres tipos de directivas: page, taglib e include.

1.2.1. page: Se indica con la forma <%@ page atributo="valor">. Tiene diversos usos, entre los
cuales destacaremos:


-

-

- Gestión de errores. Permite redireccionar a una página cuando se produzca un error, se

<%@page session="true" import="java.util.ArrayList"%>

Importar clases. Importar código, de la misma forma que se realiza en un programa en Java,
se indica con el atributo import.
Ejemplo:
<%@page import="java.io.*, miPackage.miClase"%>

Indicar si la página tendrá acceso a la sesión. Se especifica con el atributo session. El
uso de sesiones se verá con más detalle en el apartado de objetos implícitos.
Ejemplo:


indica con los atributos errorPage y isErrorPage.
Ejemplos:
<%@page errorPage="error.jsp">
[...]

<%@page isErrorPage="yes">
<html>
<body>



</body>
</html>

Error, contacte con el administrador [...]


1.2.2. include: Permite incluir un archivo en el lugar donde se especifique, al contrario que con la acción
<jsp:include> que veremos más adelante, la directiva include simplemente copia el contenido
del archivo byte a byte, siendo el resultado similar a si copiáramos el texto del archivo incluido y lo
pegáramos en el JSP.
Ejemplo:



<html>
<head>



</head>

<body>



</body>
</html>

<%@ include file="cuerpoPagina.jsp"%>

<%@ include file="titulo.txt"%>



3

<jsp:include page="cabecera.jsp"/>

<jsp:param name="tipo" value="paginaPrincipal"/>

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<html>
<head>



</head>

<body>


<jsp:include page="cuerpo.jsp">



</jsp:include>

</body>
</html>

1.2.3. taglib: Se emplea para indicar que se van a emplear librerías de etiquetas. Se verá con más detalle
en el apartado de JSTL.
Ejemplo:



1.3. Acciones

Las acciones tienen la forma <jsp:accion [parámetros]/>, y tienen diversos usos, entre los
que destacan la inclusión de páginas y transferencia de control.

1.3.1. Inclusión de páginas
Se realiza con la acción <jsp:include page="pagina.jsp">. Incluye la salida de otra página
JSP en la actual, al contrario que con la directiva <%@include file="fichero.ext"%> la
página incluida se ejecuta y su salida se inserta en la página que la incluye, con la directiva se incluye el
contenido del archivo (no su salida) y se ejecuta conjuntamente con la página principal.
La página incluída tiene acceso a los parámetros enviados a la principal, y podemos enviarle nuevos
parámetros con la subetiqueta <jsp:param name="nombre" value="valor"/>.
Ejemplo:



1.3.2. Transferencia de control
Se realiza con la acción <jsp:forward page="pagina.jsp"/>. La petición es redirigida a otra
página, y la salida de la actual se descarta. Al igual que con la inclusión, la página a la que se redirige
tiene acceso a los parámetros pasados a la actual, y es posible el envío de nuevos parámetros.
Ejemplo:
<jsp:forward page="principal.jsp">



</jsp:forward>



2. Objetos implícitos

En JSP disponemos de algunos objetos implícitos, que nos permitirán acceder a diferente información y
realizar diversas acciones. En JSP tenemos los siguientes objetos implícitos: request, response,
out, session, application, config, pageContext, y page. Podemos acceder al JavaDoc de
estas clases para ver los atributos y funciones disponibles en las direcciones:
http://java.sun.com/products/servlet/reference/api/index.html
http://java.sun.com/products/jsp/reference/api/index.html



2.1. request

Es un objetode la clase HttpServletRequest, su uso principal es el acceso a los parámetros de la
petición. Destacaremos las siguientes funciones:

· String getParameter(String name)

<jsp:param name="titulo" value="Principal"/>

Devuelve el valor de un parámetro.



4

· Enumeration getParameterNames()
· String[] getParameterValues(String name)
  • Links de descarga
http://lwp-l.com/pdf16478

Comentarios de: Introducción a JSP (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad

Revisar política de publicidad