Vous êtes sur la page 1sur 13

Leccin 2.

Conceptos Bsicos de los Servlets

Leccin 2. Conceptos Bsicos de los Servlets


Un

Servlet es una clase de Java que permite procesar peticiones


Web
Permite

leer informacin del cliente Web (parmetros de peticin)

Permite

generar una respuesta para mostrar al cliente (HTML y


archivos binarios como PDF, Audio, Video, etc.)

Curso de Servlets y JSPs

Leccin 2. Conceptos Bsicos de los Servlets

Funciones de un Servlet
Un

Servlet contiene cdigo Java, y puede agregar cdigo HTML

Un

Servlet se utiliza como una clase que controla el flujo de una


aplicacin Web (Controlador) en una arquitectura MVC (Model View Controller)

Curso de Servlets y JSPs

Leccin 2. Conceptos Bsicos de los Servlets

Mtodos HTTP y procesamiento con Servlets


En total son 8 los mtodos soportados por el protocolo HTTP. Los
cuales son Options, Get, Head, Post, Put, Delete, Trace y
Connect
Los mtodos ms utilizados son el GET y POST

GET
Enva informacin por
un URL

El mtodo que usa el


Servlet es doGet()

Curso de Servlets y JSPs

POST
Enva informacin en el
cuerpo del mensaje, no
en el URL
El mtodo que usa el
Servlet es doPost()

Leccin 2. Conceptos Bsicos de los Servlets

Ciclo de vida de un Servlet


2. Se crea un subproceso
(hilo) del Servlet

1. Se compila y se
carga la clase

5. Se ejecuta
el mtodo
destroy()

Curso de Servlets y JSPs

3. Se ejecuta
el mtodo
init()

4. Se ejecuta
el mtodo
service()

Leccin 2. Conceptos Bsicos de los Servlets

Request Headers (Cabeceros de Peticin)


Los Cabeceros de Peticin permiten obtener metadatos
de la peticin HTTP, como pueden ser:
El

Mtodo HTTP utilizado en la peticin ( GET, POST, etc. )

La

IP del equipo que realiz la peticin ( 192.168.1.1 )

El

dominio del equipo


(www.mydomain.com)
El

que

realiz

la

peticin

recurso solicitado ( http://mydomain.com/recurso )

El

navegador que se utiliz en la peticin (Mozilla, MSIE,


etc.)
Entre

varios cabeceros ms

Curso de Servlets y JSPs

Leccin 2. Conceptos Bsicos de los Servlets

Los siguientes mtodos permiten procesar los cabeceros


con la clase HttpServletRequest
getHeader()
getHeaders()
getHeaderNames()

Y algunos mtodos ms especializados son:


getCookies()
getAuthType() y getRemoteUser()
getContentLength()
getContentType()
getDateHeader()
getIntHeader()

Mtodos con informacin relativa al contexto:


getMethod()
getResquestURI()
getQueryString()
getProtocol()

Curso de Servlets y JSPs

Leccin 2. Conceptos Bsicos de los Servlets

Cdigos de Estado
Los cdigo de estado se utilizan para indicar el
estado de la respuesta del servidor web hacia el
cliente (navegador web)

Curso de Servlets y JSPs

Leccin 2. Conceptos Bsicos de los Servlets

API de los Servlets al usar los Cdigos de Estado


Los siguientes mtodos nos permiten indicar el cdigo
de respuesta del servidor web al cliente (navegador web)
response.setStatus(int
Se

codigo)

utilizan normalmente
SC_NOT_FOUND, etc.

response.sendError(int

constantes,

tales

como

SC_OK,

codigo, String mensaje)

Se

utiliza para mostrar el error en un documento HTML, normalmente los


navegadores

response.sendRedirect(String
Se

url)

utiliza para indicar redireccionamiento a otra pgina, el cdigo de


estado es el 302
Curso de Servlets y JSPs

Leccin 2. Conceptos Bsicos de los Servlets

Cdigos de Estado ms comunes en HTTP


200

(Ok): La respuesta fue correcta, es el cdigo de estado por default

204

(Sin Contenido): El navegador continua desplegando el documento previo

301

(Movido Permanentemente): El documento solicitado ha cambiado de


ubicacin, y posiblemente se indica la nueva ruta, en ese caso el navegador se
redirecciona a la nueva pgina de manera automtica
302

(Encontrado): El documento se ha movido temporalmente, y el navegador


se mueve al nuevo url de manera automtica
401

(Sin autorizacin): No se tiene permiso para visualizar el contenido


solicitado, debido a que se trat de acceder a un recurso protegido con
contrasea sin la autorizacin respectiva
404

(No encontrado): El recurso solicitado no se encuentra alojado en el


servidor Web
500

(Error Interno del Servidor Web): El servidor web lanz una excepcin
irrecuperable, y por lo tanto no se puede continuar procesando la peticin

Curso de Servlets y JSPs

Leccin 2. Conceptos Bsicos de los Servlets

Cabeceros de Respuesta en los Servlets


Los

cabeceros de respuesta se utilizan para indicar al navegador


Web cmo debe comportarse ante una respuesta de parte del
servidor Web
ejemplo comn es generar hojas de Excel, PDFs, Audio, Video,
etc, en lugar de solamente responder con texto.
Un

Para

indicar el tipo de respuesta se utilizan los tipos MIME


(Multipurpose Internet Mail Extensions)
Los

tipos MIME son un conjunto de especificaciones con el objetivo


de intercambiar archivos a travs de Internet como puede ser texto,
audio, vdeo, entre otros tipos.

Curso de Servlets y JSPs

Leccin 2. Conceptos Bsicos de los Servlets

Ejemplos ms comunes de tipos MIME


application/msword
application/pdf
application/vnd.ms-excel
application/vnd.ms-powerpoint
application/zip
audio/x-wav
text/css
text/html
text/xml
image/gif
image/jpeg
image/png
video/mpeg
video/quicktime
..
Curso de Servlets y JSPs

Microsoft Word document


Acrobat (.pdf) file
Excel spreadsheet
Powerpoint presentation
Zip archive
Microsoft Windows sound file
HTML cascading style sheet
HTML document
XML document
GIF image
JPEG image
PNG image
MPEG video clip
QuickTime video clip

Leccin 2. Conceptos Bsicos de los Servlets

API de los Servlets al usar Cabeceros de Respuesta


Mtodos para Establecer valores de los Headers

response.setHeader(String nombreCabecero, String valorCabecero),


setDateHeader y setIntHeader ponen un cabecero, si ya existe lo
reemplaza
response.addHeader, addDateHeader y addIntHeader agregan
nuevos valores en lugar de reemplazarlos
Mtodos ms comunes para establecer valores de los Headers

setContentType (Se utiliza la tabla MIME para definir su valor)


setContentLenght
addCookie
sendRedirect
Curso de Servlets y JSPs

Leccin 2. Conceptos Bsicos de los Servlets

Cabeceros ms comunes
Cache-Control

y Pragma: Se usan para el control del cache

Content-Encoding:
Content-Length:
Content-Type:
Expires:

Indica el nmero de bytes en la respuesta

Indica el tipo MIME a responder

Indica el tiempo en que el documento se considera expirado

Last-Modified:

Refresh:

Indica la codificacin del documento

Indica el tiempo en que el documento fue modificado

Indica los segundos en que el navegador recarga la pagina

Set-Cookie: Agrega

una cookie al navegador

WWW-Authenticate:

Indica el tipo de autenticacin

Curso de Servlets y JSPs

Vous aimerez peut-être aussi