servles

Páginas: 7 (1554 palabras) Publicado: 4 de septiembre de 2013
Sistemas de
Información
Tecnologías Web. Interactividad y envío de
información Cliente → Servidor
Servlets
Agradecimientos: Jesus Villamor Lugo, Simon Pickin de IT/UCIIIM.
mcfp@it.uc3m.es

Concepto
¿Qué es un servlet?
Son componentes de una aplicación web que se ejecutan en el servidor
Permiten extender la funcionalidad del servidor (tanto de servidores HTTP
como de otro tipo deservidores como por ejemplo ftp)
Son una alternativa a los CGI
Cada petición se ejecuta en un hilo. Los Servlets quedan residentes en
memoria cuando la petición termina

Un servlet es un pequeño código Java que el servidor Web carga para
manejar peticiones del cliente
Estas clases java utilizan el API Servlet
Se cargan y ejecutan dentro de un servicio de red (ej. un Servidor Web)
Implementandeterminados interfaces que le permiten:
Recibir una petición HTTP
Generar una respuesta

Servlets son a Servidores como Applets son a Navegadores
Con la diferencia de que los Servlets no suelen usar GUI
mcfp@it.uc3m.es

2

Servlets
Un poco de historia
JavaSoft lanza el Java Web Server
A mediados de 1997, conocido como Jeeves
Dos objetivos
Implementación de un Servidor de Internetbasado en Java
Introducir los Servlets

Se provee el Java Servlet Development Kit (JSDK)
Permite ejecutar servlets en los servidores HTTP más extendidos
Apache, Netscape Enterprise Server, Microsoft IIS.

Ahora forma parte de la especificación J2EE
J2EE 1.3 (principios de 2002) incluye servlet 2.3
J2EE 1.4 (mediados de 2004) incluye servlet 2.4

mcfp@it.uc3m.es

3

ServletsDocumentación e implementaciones
Documentación
http://java.sun.com/products/servlet/docs.html
http://java.sun.com/products/servlet/2.3/javadoc/index.html

J2EE SDK
Implementación de J2EE provisto por SUN
Incluye el Sun Java System Application Server Platform
últimas versiones basadas en Apache Tomcat

Apache Jakarta Tomcat
versión 4: implementación software libre de servlet 2.3
versión 5:implementación software libre de servlet 2.4

mcfp@it.uc3m.es

4

Utilidad
¿Para qué sirve un servlet?
Extiende funcionalidad del servidor
Sus usos
Reemplazar a los “primitivos” CGIs
Ej. Procesamiento de formularios en la parte servidor

Colaboración entre personas
Ej. Conferencias en-línea
Debido a la concurrencia y a la sincronización de peticiones

Reenvío de peticiones a otrosservidores y servlets

mcfp@it.uc3m.es

5

Servlets
¿Cómo funcionan?

Se parte de un Fichero.html que
tenga un formulario ()
accesible a través de Internet

1.

Fichero .html
(con )




2.

navegador
GET ó POST
Petición
3.

Programa Servlet

Respuesta

visualizar
4.

Servidor

Cliente
mcfp@it.uc3m.es

El deberá especificar las
diversas formas de paso deparámetros

El cliente accederá al fichero html
a través de un Navegador,
rellenará el formulario y dará a la
tecla de aceptar (Submit).
Empaquetando la petición.
La petición de cliente es atendida
por un Programa Servlet
(escrito en Java) quien da la debida
respuesta tras procesarse la
petición.
El cliente Visualizará la
respuesta
6

Servlets
Ciclo de vida de un servlet
1.Instanciación e inicialización del servlet. Si aún no existe ninguna
instancia del servlet (es la primera llamada), el contenedor web:
Primero carga la clase del servlet,
luego crea una instancia y la inicializa invocando su método init

2.

Entonces, el servidor puede servir continuamente peticiones. Para
cada llamada:

El contenedor crea un nuevo thread (hilo)
Se invoca al métodoservice de dicho thread.
Los servlets residen típicamente en servidores multithread pero el
programador es el responsable de sincronizar el acceso a los recursos
compartidos.
También se puede restringir el acceso a un único thread
3. El método service determina tipo de petición que ha llegado y llama al
método correspondiente doGet, doPost, etc.
4.

Un servlet se desactiva cuando recibe una...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS