miércoles, 12 de septiembre de 2012

¿Que es un Servlet?

¿Que es un Servlet?


  • Los Servlets son módulos que extienden los servidores                orientados a petición-respuesta.
  • Son servidores web compatibles con Java.
        Por ejemplo:

  • Un Servlet podría ser responsable de tomar los datos de un formulario de entrada de pedidos en HTML
  • Aplicarle la lógica de negocios utilizada para actualizar la base de datos de pedidos de la compañía.

Que puede hacer un Servlet

*Leer los datos enviados por un usuario.
*Usualmente de formularios en páginas Web.
*Pueden venir de applets de Java o programas cliente HTTP.
*Buscar cualquier otra información sobre la petición que venga incluida en esta.
*Detalles de las capacidades del navegador, cookies, nombre del host del cliente, etc.
*Generar los resultados.
*Puede requerir consultas a Base de Datos, invocar a otras aplicaciones, computar directamente la respuesta, etc.
*Dar formato a los resultados en un documento.
*Incluir la información en una página HTML.
*Establecer los parámetros de la respuesta HTTP.
*Decirle al navegador el tipo de documento que se va a devolver, establecer las cookies, etc.
*Enviar el documento al Cliente.

Modo de Comunicación

 -  El primer paso en este proceso es que el cliente envía una petición  HTTP al servicio  HTTP.

   - El segundo paso es que el servicio HTTP transmite a los datos de la petición el Contenedor Web.

    - En el tercer paso, el Contenedor Web  crea un objeto que encapsule los datos del request stream.  El Web Container además crea un objeto que encapsule el Stream Response.

     - En el cuarto paso, el WebContainer ejecuta el método de servicio del servlet solicitado.  Los objetos de la petición y de la respuesta se pasan como argumentos a este método.  La ejecución del método de servicio ocurre en un hilo de  separado. 

     - Finalmente, el texto de la respuesta generada por el servlet se empaqueta en una HTTP responde Stream, que se envía al servicio HTTP y se remite al cliente







No hay comentarios:

Publicar un comentario