sábado, 1 de mayo de 2010

MANEJO DE SERVLETs

Que tal esta oportunidad postearé sobre un tema ya un poco antiguo, pero que nunca pasará 100% de moda, ya que por mas frameworks que utilicemos para nuestros desarrollos en algún momento tendremos la necesidad de recurrir al uso de un Servlet.

Un servlet es un objeto que se ejecuta en un servidor o contenedor JEE, especialmente diseñado para ofrecer contenido dinámico desde un servidor web, generalmente HTML.

Un servlet implementa la interfaz javax.servlet.Servlet o hereda alguna de las clases más convenientes para un protocolo específico (Ejm: javax.servlet.HttpServlet). Al implementar esta interfaz el servlet es capaz de interpretar los objetos de tipo 'HttpServletRequest' y 'HttpServletResponse' quienes contienen la información de la página que invocó al servlet.

Ciclo de vida de un Servlet.

El ciclo de vida de un Servlet se divide en los siguientes puntos:

1. El cliente solicita una petición a un servidor vía URL.
2. El servidor recibe la petición.
2.1. Si es la primera, se utiliza el motor de Servlets para cargarlo y se llama al método init().
2.2. Si ya está iniciado, cualquier petición se convierte en un nuevo hilo. Un Servlet puede manejar múltiples peticiones de clientes.
3. Se llama al método service() para procesar la petición devolviendo el resultado al cliente.
4. Cuando se apaga el motor de un Servlet se llama al método destroy(), que lo destruye y libera los recursos abiertos.

Asi mismo un Servlet permite el acceso por medio de unos objetos, para el acceso al contexto de la aplicación.

-------------
ServletConfig
-------------

- Para el acceso al contexto actual de una aplicación Web corriendo en una JVM.
- Un ServletConfig por 'Servlet'.
- Es usado para el acceso al 'ServletContext'.
- Se accede al objeto mediante: getServletConfig().getInitParameter( "nombreParametro" );

--------------
ServletContext
--------------

- Para el acceso al contexto actual de una aplicación Web corriendo en una JVM.
- Usado para el acceso a la configuración de elemento deployado.
- Se acceder al objeto mediante: getServletContext().getInitParameter( "nombreParametro" );

El ejemplo preparador muestra una aplicación dividida en 2 partes:

La primera muestra un Login que valida un usuario y password, aqui se muestra el manejo de metodos como: doGet(), doPost(), service(), destroy(), etc.Mientras que el segundo ejemplo muestra el manejo de un muy útil ImageServlet.







Para mayor detalle descargar el ejemplo completo: AQUÌ.

No hay comentarios: