Baixe o app para aproveitar ainda mais
Prévia do material em texto
Gerenciamento de sessão Sessão • É única para cada cliente e persiste através de várias requisições • representada por objetos HttpSession • obtida a partir de uma requisição. Exemplo: – HttpSession session = request.getSession(); – HttpSession session = request.getSession(false); Sessão • Dois métodos permitem o compartilhamento de objetos na sessão: – ƒsetAttribute ("nome", objeto); – ƒObject getAttribute ("nome"); Gerência de sessão • Pode-se definir um timeout para a duração de uma sessão desde a última requisição do cliente • Definido no web.xml – <session-config> Gerência de sessão • Métodos específicos para captura de eventos de sessão Servlets e sessões • Servlets podem compartilhar informações de várias maneiras – ƒUsando meios persistentes (bancos de dados, arquivos, etc) – ƒUsando objetos na memória por escopo (requisição, sessão, contexto) – ƒUsando variáveis estáticas ou de instância Servlets e sessões • Servlets oferecem três níveis diferentes de persistência na memória (ordem decrescente de duração): – Contexto da aplicação : vale enquanto aplicação estiver na memória (javax.servlet. ServletContext) – ƒSessão: dura uma sessão do cliente (javax.servlet.http. HttpSession) – ƒRequisição: dura uma requisição (javax.servlet. ServletRequest) Servlets e sessões • Para gravar dados em um objeto de persistência na memória – objeto. setAttribute (“nome", dados); • ƒPara recuperar ou remover os dados – Object dados = objeto. getAttribute(“nome"); – Objeto.removeAttribute(“nome");
Compartilhar