Sesiones


Una sesión es una serie de comunicaciones entre un cliente y un servidor en la que se realiza un intercambio de información. Por medio de una sesión se puede hacer un seguimiento de un usuario a través de la aplicación.
El tiempo de vida de una sesión comienza cuando un usuario se conecta por primera vez a un sitio web pero su finalización puede estar relacionada con tres circunstancias:

  • Cuando se abandona el sitio web.
  • Cuando se alcanza un tiempo de inactividad que es previamente establecido, en este caso la sesión es automáticamente eliminada. Si el usuario siguiera navegando se crearía una nueva sesión.
  • Se ha cerrado o reiniciado el servidor.

Manejo de sesiones

Para poder hacer uso de las sesiones en JSP hay que poner el atributo session de la directiva page a true de la siguiente manera:

<%@page session=’true’%>

Para obtener la sesión de un usuario se utiliza el método getSession() que devuelve una interfaz de tipo HttpSession.

<% HttpSession sesion=request.getSession(); %>

Cookies


Las cookies constituyen una potente herramienta empleada por los servidores Web para almacenar y recuperar información acerca de sus visitantes. Mediante el uso de cookies se permite al servidor Web recordar algunos datos concernientes al usuario, como sus preferencias para la visualización de las páginas de ese servidor, nombre y contraseña, productos que más le interesan, etc.

Una cookie no es más que un fichero de texto que algunos servidores piden a nuestro navegador que escriba en nuestro disco duro, con información acerca de lo que hemos estado haciendo por sus páginas.


Aquí tenemos un ejemplo de Cookie:

String cookie=new String(); int encontrado=-1; String log=new String(); Cookie [] todosLosCookies=request.getCookies(); Cookie unCookie=null; for(int i=0;(i<todosLosCookies.length) && (encontrado==-1);i++) { unCookie=todosLosCookies[i]; if(unCookie.getName().equals("login")) { encontrado=i; } } if(encontrado!=-1) { cookie=unCookie.getValue(); }