0% encontró este documento útil (0 votos)
122 vistas3 páginas

HTTP Session

HttpSession sirve para almacenar información entre diferentes peticiones del usuario. Crea un objeto en el servidor con un HashMap para cada usuario que inicia sesión, permitiendo almacenar y compartir información entre páginas. Cada usuario tiene su propio HashMap para almacenar datos de forma individual. Los métodos getAttribute, setAttribute y deleteAttribute permiten obtener, establecer y eliminar valores de atributos en la sesión.

Cargado por

Chiona Chio
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
122 vistas3 páginas

HTTP Session

HttpSession sirve para almacenar información entre diferentes peticiones del usuario. Crea un objeto en el servidor con un HashMap para cada usuario que inicia sesión, permitiendo almacenar y compartir información entre páginas. Cada usuario tiene su propio HashMap para almacenar datos de forma individual. Los métodos getAttribute, setAttribute y deleteAttribute permiten obtener, establecer y eliminar valores de atributos en la sesión.

Cargado por

Chiona Chio
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3

HttpSession

Sirve para almacenar información entre diferentes peticiones.

La clase HttpSession tiene una estructura de HashMap (Dicccionario) y  permite


almacenar cualquier tipo de objeto en ella de tal forma que pueda ser compartido por las
diferentes páginas que como usuarios utilizamos.

Su funcionamiento es el siguiente: cada vez que un usuario crea una sesión accediendo
a una página (que la genere) se crea un objeto a nivel de Servidor con un HashMap vacío
que nos permite almacenar la información que necesitamos relativa a este usuario.
Realizado este primer paso se envía al navegador del usuario una Cookie que sirve para
identificarle y asociarle el HashMap que se acaba de construir para que pueda almacenar
información en él. Este HashMap puede ser accedido desde cualquier otra página
permitiéndonos compartir información.

Usuarios y Sessiones
El concepto de Session es individual de cada usuario que se conecta a nuestra aplicación y la
información no es compartida entre ellos. Así pues cada usuario dispondrá de su propio
HashMap en donde almacenar la información que resulte útil entre páginas.
Métodos

Object getAttribute(String name) void setAttribute(String name, object objeto) void


deleteAttribute(String name, object objeto)

obtienen / establecen / eliminan, respectivamente, valores de atributos. Estos métodos eran


getValue(), putValue() y removeValue() hasta la versión 2.2 de servlets. Se tienen además
métodos como getAttributeNames() para obtener los nombres de los atributos que se tienen
almacenados para la sesión

public int getMaxInactiveInterval() y public void invalidate()

Una sesión de usuario puede invalidarse manualmente, o automáticamente (dependiendo de


dónde esté ejecutando el servlet)

Para invalidarla automáticamente, la sesión expira cuando transcurre el tiempo indicado por el
método getMaxInactiveInterval() entre dos accesos del cliente (en segundos)

Para invalidar manualmente una sesión, se emplea el método invalidate() de la misma.

Long getCreationTime() Returns the time when this session was created, measured in
milliseconds since midnight January 1, 1970 GMT.

String getId() Obtiene el identiticador único de la sesión

Long getLastAccessedTime() Returns the last time the client sent a request associated with
this session, as the number of milliseconds since midnight January 1, 1970 GMT, and marked
by the time the container received the request.

Int getMaxInactiveInterval() Returns the maximum time interval, in seconds, that the servlet
container will keep this session open between client accesses.

ServletContext getServletContext() Returns the ServletContext to which this session belongs.

HttpSessionContext getSession () y public HttpSession getSession(boolean crear)


obtiene una sesión de usuario.

El primer método obtiene la sesión actual, o crea una si no existe. Con el segundo método
podemos establecer, mediante el flag booleano, si queremos crear una nueva si no existe (true)
o no (false). Si la sesión es nueva, el método isNew() del HttpSession devuelve true, y la sesión
no tiene ningún dato asociado. Deberemos ir añadiéndole datos tras crearla.
Para mantener la sesión de forma adecuada, debemos llamar a getSession() antes de que se
escriba nada en la respuesta HttpServletResponse (y si utilizamos un Writer, debemos
obtenerla antes de obtener el Writer, no antes de escribir datos).

También podría gustarte