Tema5
1. Servlets.
1.
2.
3.
4.
5.
6.
IST - 2006
2. JSP.
Introducción.
Objeto Request.
Objeto Response.
Cookies.
Sesiones.
Reescritura de
URLs
1.
2.
3.
4.
Introducción.
Elementos JSP.
Java Beans.
Etiquetas
personalizadas.
5. JDBC
6. Integración
Servlets y JSP
Servlets y JSP
1
SERVLETS: 1.1 Introducción
¿Qué son? (I)
? Los Servlets son la alternativa Java a los CGIs.
?Actúan como capa intermedia entre:
? Petición proveniente de un Navegador Web u otro cliente HTTP
? Bases de Datos o Aplicaciones en el servidor HTTP
? Son aplicaciones Java especiales, que extienden la
funcionalidad del servidor HTTP, dedicadas a:
? Leer los datos enviados por el cliente.
? Extraer cualquier información útil incluida en la cabecera HTTP o
en el cuerpo del mensaje de peticiónenviado por el cliente.
? Generar dinámicamente resultados.
? Formatear los resultados en un documento HTML.
? Establecer los parámetros HTTP adecuados incluidos en la
cabecera de la respuesta (por ejemplo: el tipo de documento,
cookies, etc.)
? Enviar el documento final al cliente.
IST - 2006
Servlets y JSP
2
SERVLETS: 1.1 Introducción
Capa intermedia (I)
Servidor Web
BD
Servlet
BD
externaAplicación
IST - 2006
Servlets y JSP
3
SERVLETS: 1.1 Introducción
¿Qué son? (II)
? Los objetos servlets cumplen los siguientes requisitos:
? Están basados en el marco de Servlets.
? Utilizan el “Servlet Application Programming Interface” (SAPI)
?El interfaz SAPI define una manera estándar para que las
peticiones HTTP sean procesadas por esta clase Java
(independiente del servidor).
?Asociados a la URL de la petición, son manejados por el
contenedor de servlets con una arquitectura simple.
? El contenedor provee el entorno de ejecución para todos los
servlets basados en los anteriores requisitos.
? Disponibles para la gran mayoría de servidores web.
? Son independientes de la plataforma y del servidor.
IST - 2006
Servlets y JSP
4
SERVLETS: 1.1 Introducción
Ventajas de losServlets
? Eficiencia.
? Cada petición por parte de un cliente crea un hilo, no un nuevo
proceso como ocurría con los CGIs tradicionales.
? Potencia.
? Son programados en Java, por lo que se puede emplear todas las
clases y herramientas disponibles para esta plataforma.
? Seguridad.
? Controlada por la máquina virtual de Java.
? La mayoría de problemas de seguridad encontrados en los CGIs
noaparecen en los Servlets.
? Portabilidad.
? Puede ser utilizados sobre cualquier SO. y en la mayoría de
servidores Web.
? Precio.
? Normalmente todo el software necesario es gratis.
IST - 2006
Servlets y JSP
5
SERVLETS: 1.1 Introducción
Ventajas de los Servlets
Servidor Web basado en CGI
Servidor
Web
Petición al CGI-1
Proceso Hijo del CGI-1
Petición al CGI-2
Proceso Hijo del CGI-2Petición al CGI-1
Proceso Hijo del CGI-1
Servidor Web basado en Java Servlet
Servidor Web
Petición al Servlet-1
JVM
Servlet-1
Petición al Servlet-2
Petición al Servlet-1
IST - 2006
Servlets y JSP
Thread
Servlet-2
6
SERVLETS: 1.1 Introducción
Arquitectura de los Servlets
? Para implementar los servlets se hace uso de:
? javax.servlet: entorno básico
? javax.servlet.http: extensión paraservlets http.
Servlet
HttpServlet
MiServlet
IST - 2006
Servlets y JSP
7
SERVLETS: 1.1 Introducción
Estructura básica
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
// Para PrintWriter
// Para ServletException
// Para HttpServlet*
public class PlantillaServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throwsServletException, IOException
{
// El objeto "request" se utiliza para leer la
// cabecera HTTP, cookies, datos enviados (GET o POST)
// El objeto "response" para fijar la respuesta
PrintWriter out = response.getWriter();
// out Se utiliza para enviar el contenido al cliente
}
// Idem para el método doPost
}
IST - 2006
Servlets y JSP
8
SERVLETS: 1.1 Introducción
Ejemplo
import java.io.*;
import...
Regístrate para leer el documento completo.