如何在JSP中创建注销页面?

如何在JSP中创建注销页面?,jsp,Jsp,我有一个注销页面,上面写着这些代码 HttpSession session = request.getSession(false); if(session != null) session.invalidate(); request.getRequestDispatcher("/index.jsp").forward(request,response); 但是,在单击“注销”按钮并重定向到index.jsp后,我仍然可以使用浏览器的“后退”按钮访问以前访问过的链接。我该怎么处理这件

我有一个注销页面,上面写着这些代码

HttpSession session = request.getSession(false);
  if(session != null)
  session.invalidate();
  request.getRequestDispatcher("/index.jsp").forward(request,response);

但是,在单击“注销”按钮并重定向到index.jsp后,我仍然可以使用浏览器的“后退”按钮访问以前访问过的链接。我该怎么处理这件事呢?在我注销后,除非我再次登录,否则我将始终被重定向到index.jsp(我的登录页面)?帮助?

单击“单击浏览器”按钮,页面将从缓存中提供,您可以通过浏览器中的“网络”选项卡(chrome中的
F12)进行检查

    HttpSession session = request.getSession();
    if(session != null)
    {
        session.setAttribute("loginBean", null);
        session.invalidate();
    }
    response.sendRedirect("index.jsp");
在服务器端,您应该执行以下操作

1.您可以在公共点检查会话(假设它是
过滤器
或任何
servlet控制器
(登录请求除外))。若会话可用,则允许继续,若不可用,则将用户重定向到登录页面

2.注销时,正如您正在执行的
session.invalidate()

3.我还建议在注销时向
HttpServletResponse
对象添加以下标题

    Cache-Control,Pragma,No Cache,Expire

    response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate");
    response.setHeader("Pragma", "no-cache");
    response.setDateHeader("Expires", 0);
这可能是