Java 如何实现jsp页面的会话跟踪
我已经在我的项目中使用了jsp技术。我想做会话跟踪 在我的登录表单中。 注销后,当我按下“后退”按钮时,它应该显示Java 如何实现jsp页面的会话跟踪,java,session,jsp,servlets,tracking,Java,Session,Jsp,Servlets,Tracking,我已经在我的项目中使用了jsp技术。我想做会话跟踪 在我的登录表单中。 注销后,当我按下“后退”按钮时,它应该显示 会话已过期。请帮助我。您不需要手动执行。servletcontainer将为您执行此操作。您可以通过访问跟踪的会话。您只需将登录用户作为会话属性 request.getSession().setAttribute("user", user); 让剩下的代码在上面截取。对此,通常使用过滤器 if (request.getSession().getAttribute("user")
会话已过期。请帮助我。您不需要手动执行。servletcontainer将为您执行此操作。您可以通过访问跟踪的会话。您只需将登录用户作为会话属性
request.getSession().setAttribute("user", user);
让剩下的代码在上面截取。对此,通常使用过滤器
if (request.getSession().getAttribute("user") == null) {
// Not logged in. Redirect to login page.
response.sendRedirect("login.jsp");
} else {
// Logged in. Just continue request.
chain.doFilter(request, response);
}
当您调用注销时,只需将用户从会话中删除
request.getSession().removeAttribute("user");
servletcontainer还将管理会话到期。当它过期时,HttpSession
将被丢弃,包括它的所有属性
至于“后退”按钮问题,只需指示客户端不要缓存响应,这样它就会被迫触发一个全新的请求,然后通过过滤器
。需要通过相应地设置响应头来执行此客户端指令。这也可以在过滤器中完成
response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
response.setHeader("Pragma", "no-cache"); // HTTP 1.0.
response.setDateHeader("Expires", 0); // Proxies.
你不需要手动操作。servletcontainer将为您执行此操作。您可以通过访问跟踪的会话。您只需将登录用户作为会话属性
request.getSession().setAttribute("user", user);
让剩下的代码在上面截取。对此,通常使用过滤器
if (request.getSession().getAttribute("user") == null) {
// Not logged in. Redirect to login page.
response.sendRedirect("login.jsp");
} else {
// Logged in. Just continue request.
chain.doFilter(request, response);
}
当您调用注销时,只需将用户从会话中删除
request.getSession().removeAttribute("user");
servletcontainer还将管理会话到期。当它过期时,HttpSession
将被丢弃,包括它的所有属性
至于“后退”按钮问题,只需指示客户端不要缓存响应,这样它就会被迫触发一个全新的请求,然后通过过滤器
。需要通过相应地设置响应头来执行此客户端指令。这也可以在过滤器中完成
response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
response.setHeader("Pragma", "no-cache"); // HTTP 1.0.
response.setDateHeader("Expires", 0); // Proxies.
首先,会话创建和销毁:
使用
实现会话创建(HttpSessionEvent se)
,输出告诉您已创建会话
用一个输出告诉您会话已被破坏,从而实现sessionDestroyed(HttpSessionEvent se)
。也就是说,用户已注销,或者用户的会话已过期
现在,中间部分。对于该过滤器,使用带有相应web.xml
条目的*.jsp
。在过滤器内部,使用doFilter(ServletRequest请求、ServletResponse响应、过滤器链)
。将ServletRequest
转换为HttpServletRequest
。使用该请求,您将有许多方法可用于会话跟踪。用户凭证、访问URL、基本上所有可能感兴趣的内容。首先,会话创建和销毁:
使用
实现会话创建(HttpSessionEvent se)
,输出告诉您已创建会话
用一个输出告诉您会话已被破坏,从而实现sessionDestroyed(HttpSessionEvent se)
。也就是说,用户已注销,或者用户的会话已过期
现在,中间部分。对于该过滤器,使用带有相应web.xml
条目的*.jsp
。在过滤器内部,使用doFilter(ServletRequest请求、ServletResponse响应、过滤器链)
。将ServletRequest
转换为HttpServletRequest
。使用该请求,您将有许多方法可用于会话跟踪。用户的凭证,访问URL,基本上所有可能感兴趣的内容