Java 会话销毁后仍在获取会话ID
这是从jsp页面调用的servlet注销。我正在尝试销毁会话,但在函数session.invalidate()之后,它仍在打印会话ID。我的会话是否已被销毁,或者在执行invalidate函数后需要一些时间来销毁 它会立即毁灭。它不会将Id设置为null。只要调用Java 会话销毁后仍在获取会话ID,java,jsp,session,Java,Jsp,Session,这是从jsp页面调用的servlet注销。我正在尝试销毁会话,但在函数session.invalidate()之后,它仍在打印会话ID。我的会话是否已被销毁,或者在执行invalidate函数后需要一些时间来销毁 它会立即毁灭。它不会将Id设置为null。只要调用.invalidate方法,它就会立即解除绑定到它的所有对象的绑定 根据文件 protected void doPost(HttpServletRequest request, HttpServletResponse response)
.invalidate
方法,它就会立即解除绑定到它的所有对象的绑定
根据文件
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out=response.getWriter();
HttpSession session=request.getSession(false);
session.invalidate();
out.println(session.getId());
// processRequest(request, response);
}
要检查它是否无效,请从会话中获取属性并检查其值。例如
invalidate
void invalidate()
Invalidates this session then unbinds any objects bound to it.
在这种情况下,它将打印null
注意:在检查上述情况之前,您已经在会话
中设置了值
希望这有帮助
String value= (String)session.getAttribute("value");
out.print(value);