Servlets
Ramiro Lago (Octubre 2005)
En este capítulo nos centramos en el mundo de los servlets, de imprescindible conocimiento para quien
quiera entender y desarrollar aplicaciones empresariales. Para entender el papel de los servlets dentro
de la arquitectura J2EE puede consultar el capítulo
dedicado a dicha arquitectura.
- Introducción a los servlets (*). Realizaremos el clásico "Hola
mundo". Se aborda también el problema de despliegue de servlets y la instalación de contextos de
aplicación con Tomcat.
- Métodos y clases fundamentales (*). Usaremos los métodos
init(), doPost(), doGet() y destroy(). Dentro de
init(), entre otras cosas, se obtienen parámetros de inicio introducidos en
web.xml. Dentro de doGet() se obtienen
las propiedades de System.
- Uso de HttpServletRequest (*). Se puede ver la cantidad de
información que podemos obtener a partir de HttpServletRequest, la clase que encapsula datos de
la petición.
- Servlet que se conecta a una base de datos (utiliza JDBC) (*).
Además presenta un ejemplo del manejo de la clase Properties.
- destroy(): cómo terminar de manera elegante (y segura)
- Manejo de información de la sesión (*) El primer servlet
crea un atributo de sesión, mediante setAttibute(), el segundo lo obtiene
mediante getAttribute().
- Uso de sendRedirect() (*). Un servlet no tiene
necesariamente que generar una salida en HTML, en muchas ocasiones realizan una acción e invocan
(mediante sendRedirect) a un segundo servlet. Además se muestra el uso de códigos de error en
la respuesta.
- RequestDispatcher (*).
- Manejo de cookies (*).
- Filtros. El filtro se interpone en la petición HTTP y puede validarlas.
- Servlets que utilizan JDBC y atributos de sesión (*).
Un ejemplo de anidamiento de servlets con HTML. Un servlet genera un formulario en HTML
(lista de clientes), este formulario invoca a un segundo servlet (ventas del cliente seleccionado)
que da la página de respuesta final. El acceso a la base de datos lo realizan clases DAO.
Además se maneja la sesión. Hay un ejemplo de uso de DecimalFormat.
- Servlet para la carga (upload) de archivos. .
- Por medio de JNDI un servlet puede obtener
información de web.xml (*), concretamente las propiedades de entorno (enviroment)
definidas por el administrador.
Es una forma más sencilla de obtener propiedades que el manejo de archivos .properties.
- Por medio de JNDI un servlet puede acceder
a un pool de conexiones, para lo cual debemos usar el interfaz DataSource.
Enlace a un tutorial de SUN sobre Servlets.
* Capítulos que contienen servlets de ejemplo.
Volver al índice