![](../images/Manejodesesiones.gif)
¿Que es una Sesion?
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.
Tiempo de vida de una sesión comienza cuando un usuario se conecta por primera vez a un sitio web y su finalización puede darse cuando:
- ▫ Se abandona el sitio web.
- ▫ Se alcanza un tiempo de inactividad
- ▫ Se ha cerrado o reiniciado el servidor
Para mayor seguridad y consistencia en el intercambio de información se trabaja una sesión con un login y password. Esta forma es útil cuando los usuarios necesitan tener permisos especiales para acceder a ciertas paginas dentro del sitio, entonces el sistema deberá verificar sus credenciales, si no se ha identificado no podrá tener acceso y deberá ser redireccionado a una pagina para hacer su login respectivo.
Guardar una sesion
setAttribute() es el método que se usa para guardar un objeto en la sesión activa actualmente. Éste método requiere de 2 argumentos, el primero debe ser el nombre o etiqueta que indentificará a la variable que lo guardará y el segundo es el dato que se va a guardar
SetAttribute(java.lang.String name, java.lang.Object value)
Recuperar una sesion
getAttribute() es el método que se usa para obtener un objeto que fue guardado con anterioridad en la sesión activa. Éste método requiere solamente el nombre que identifica el objeto en cuestión que se quiere recuperar.
Para realizar esta operación se añade el tipo de objeto al lado de tipo HttpSession que utiliza el método getAttribute() para obtener el objeto que devuelve:
getAttribute(java.lang,String nombre)
Si el objeto almacenado en la sesión no existe, el valor devuelto será null
Cerrar una sesion
Cerrar una sesion es una utilidad muy importante ya que nos permite estar seguros que nuestra sesion esta finalizada y todos nuestros datos son seguros haciendo que nadie pueda acceder a ellos sin nuestra clave y usuario
<%@ page session="true" %> <% HttpSession sesionOk = request.getSession(); sesionOk.invalidate(); %> <jsp:forward page="login.jsp"/>