java如何清除session
清除单个Session属性
使用removeAttribute方法清除Session中指定的属性:

HttpSession session = request.getSession();
session.removeAttribute("attributeName");
清除所有Session属性
通过遍历Session属性名称并逐一移除:

HttpSession session = request.getSession();
Enumeration<String> attributeNames = session.getAttributeNames();
while (attributeNames.hasMoreElements()) {
session.removeAttribute(attributeNames.nextElement());
}
使Session失效
调用invalidate方法直接销毁整个Session对象:
HttpSession session = request.getSession();
session.invalidate(); // 后续访问会创建新Session
设置Session超时
通过setMaxInactiveInterval控制Session自动失效时间(单位:秒):
session.setMaxInactiveInterval(0); // 立即失效
// 或设置具体时间(如30分钟)
session.setMaxInactiveInterval(30 * 60);
注意事项
- 调用
invalidate后,再操作Session会抛出IllegalStateException。 - 超时设置为负数表示Session永不过期(需谨慎使用)。
- 部分框架(如Spring)可能提供封装工具类简化操作。






