0% encontró este documento útil (0 votos)
17 vistas12 páginas

Extensiones en El Servidor: JSP: (Java Server Pages)

JSP (Java Server Pages) es una tecnología que permite crear páginas web dinámicas mediante la combinación de HTML y scripts de Java, ejecutados en un motor JSP como TOMCAT. Facilita la separación entre contenido estático y dinámico, y permite la reutilización de componentes a través de JavaBeans. Además, JSP ofrece un conjunto de etiquetas para simplificar el acceso y procesamiento de datos, garantizando independencia de plataforma tanto en el cliente como en el servidor.

Cargado por

luisbomallon
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
17 vistas12 páginas

Extensiones en El Servidor: JSP: (Java Server Pages)

JSP (Java Server Pages) es una tecnología que permite crear páginas web dinámicas mediante la combinación de HTML y scripts de Java, ejecutados en un motor JSP como TOMCAT. Facilita la separación entre contenido estático y dinámico, y permite la reutilización de componentes a través de JavaBeans. Además, JSP ofrece un conjunto de etiquetas para simplificar el acceso y procesamiento de datos, garantizando independencia de plataforma tanto en el cliente como en el servidor.

Cargado por

luisbomallon
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 12

Extensiones en el servidor: JSP

El ob
nego
• JSP (Java Server Pages) es una tecnología similar a PHP: páginas
HTML con scripts de Java en medio, ejecutados por un motor JSP
(p.e. TOMCAT) antes de responder

• Apropiado para páginas mayormente estáticas. Separación entre


parte estática (HTML) y dinámica (JSP)

• Reutilización de componentes software (JavaBeans) que se


encargan de calcular/almacenar los datos para alimentar la página

• Independencia de plataforma en el cliente (sólo recibe HTML) y en


el servidor (Java garantiza ejecución en cualquier JVM)

• Proporciona al creador de la página un conjunto extensible de tags


para procesar y acceder a la información de forma abstracta

1
JSP: Modelo MVC

Cliente Controller

HTTP Servidor
web

View Model
JSP: Multi-tier distributed computing
Ejemplo JSP
<%@
JSP inadecuada <%@
<%@page pageEncoding="UTF-8"%> <% %> à sentencias
<%@
<%! int fontSize=1; %> <%@ %> à directivas
<html>
<head><title>Ejemplo bucle</title></head> <%! %> à declaraciones
<body>
<% while (fontSize <= 3){ %> <%= %> à expresiones
<font size="<%= fontSize %>">
Hola Mundo
</font><br/>
<% fontSize++; %>
<% } %>
</body>
</html>

Resultado
Hola Mundo
Hola Mundo
Hola Mundo

4
JSP

• JSP es una extensión/abstracción de la tecnología de servlets de Java:


en la primera petición, el servidor transforma la página JSP en un
servlet, lo compila y lo ejecuta. Las siguientes peticiones serán más
eficientes ya que se usa el nuevo servlet
El Se
• Página JSP: al ins
<% if (mes.equals(“agosto”)) { %>
<b>¡Vacaciones!</b>
<% } else { %>
<b>¡A trabajar! </b>
<% } %>
• Servlet creado por el TOMCAT a partir de la página JSP:
if (mes.equals(“agosto)) {
out.println(“<b>¡Vacaciones!</b> ”);
else {
out.println(“<b>¡A trabajar! </b> ”);
}
5
JSP: beans

• Las beans son clases Java empleadas para obtener, procesar


y almacenar temporalmente información destinada a ser usada
en una respuesta a una solicitud a una aplicación web
package Beans;
• Características:
public class AuxBean
• Un constructor opcional sin argumentos implements Serializable {
• Un conjunto de variables privadas private String msg;

• getters y setters para esas variables


public AuxBean() {
• Implementa los interfaces Serializable o msg = “hola mundo”;
Externalizable }
public void setMsg (String m) {
• Puede contener otras variables no this.msg = m;
}
accesibles a través de este interfaz, y
public String getMsg() {
otros métodos para realizar cualquier tipo return msg;
de procesado, al margen de los métodos }
de su interfaz como bean }
JSP: servlet

import Beans.AuxBean;
public class ejBean extends HttpServlet {
AuxBean servletBean;
protected void doGet (HttpServletRequest request, HttpServletResponse response) El se
throws ServletException, IOException { • id
servletBean = new AuxBean(); • in
servletBean.setMsg(”mensaje..."); • tra
m
request.setAttribute("laBean", servletBean);

ServletContext sc = request.getServletContext();
RequestDispatcher rd = sc.getRequestDispatcher("/pag.jsp");
rd.forward(request,response);
}
}
JSP: pag.jsp genérica

• Variables (objetos) predefinidas: request, response, session, out...

<%@page contentType="text/html"%> En re
<%@page pageEncoding="UTF-8"%> Usa
Se le
<%@page import="Beans.AuxBean"%>
<html>
<head> <title> Ejemplo </title> </head>
Emp
<body>
No c
<% AuxBean jspBean = (AuxBean)request.getAttribute("laBean");
out.println(“bean recuperada”); %> Dos
y en
<b> Mensaje obtenido de la clase:</b>
<%= jspBean.getMsg() %>
</body>
</html>
JSP: tags

• Tags: encapsulan funcionalidad, ocultando los detalles al creador de


páginas. Hay una serie de tags estándar:
• <jsp:include page=“fich” />
• <jsp:forward page=“URL” />
• <jsp:param name=“nombre” value=“valor” />
• <jsp:useBean id=“ident” scope="session" class="Beans.AuxBean" >
• <jsp:setProperty name=“ident” property=“laPropiedad” />
• <jsp:getProperty name=“ident” property=“laPropiedad” />

• Librerías de tags: para ampliar el conjunto de tags que se puede usar


– <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
JSP que usa tags y beans

<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<html>
<head>
<jsp:useBean id="laBean" scope="session" class="Beans.AuxBean" />
<title> Ejemplo</title>
Se s
</head>
<body> laBe
<% if (condicion de error) { %> Toda
<jsp:forward page=“PaginaDeError” />
<% } %>

<b>Mensaje obtenido de la bean: </b>


<jsp:getProperty name="laBean" property="msg" />
</body>
</html>
JSP que usa EL (Expression Language)
<c:fo
<in
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
</c:fo

<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<html>
<head> <title> Fecha y hora </title> </head>
<body>
<c:if test ="${laBean.msg == null}">
<jsp:forward page=“PaginaDeError” />
</c:if>

<b>Mensaje obtenido de la bean: </b>


${laBean.msg}
</body>
</html>
Extensiones en el servidor: JSP

JSP Servlets Beans Servlets

JSP Engine

Páginas JSP

HTML Servlet Engine

Servidor

Cliente

También podría gustarte