Java 无法关闭我的会话servlet
我无法在注销方法中使用session.invalidate()关闭会话。请帮助Java 无法关闭我的会话servlet,java,servlets,httpsession,Java,Servlets,Httpsession,我无法在注销方法中使用session.invalidate()关闭会话。请帮助 public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); respo
public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
response.getWriter().println("<h3><a href='/assign2'>Logged out Successfully</a></h3>");
HttpSession session = request.getSession(false);
if(session!=null)
session.invalidate();
}
注销页面可以,但在欢迎页面中,您混合了以下概念: 尽管执行
session.invalidate
会解除所有绑定属性的绑定,但您正在从ServletContext而不是会话检索属性userid
。此外,请注意,request.getSession()
会在必要时创建一个新会话
存储和检索属性的一致方式是通过HttpSession对象:
HttpSession session=request.getSession(false);
if(session!=null)
{
if((session.getAttribute("userid")) != null)
{
username = session.getAttribute("userid").toString();
}
}
System.out.println(username);
注销页面可以,但在欢迎页面中,您混合了以下概念: 尽管执行
session.invalidate
会解除所有绑定属性的绑定,但您正在从ServletContext而不是会话检索属性userid
。此外,请注意,request.getSession()
会在必要时创建一个新会话
存储和检索属性的一致方式是通过HttpSession对象:
HttpSession session=request.getSession(false);
if(session!=null)
{
if((session.getAttribute("userid")) != null)
{
username = session.getAttribute("userid").toString();
}
}
System.out.println(username);