Java 正在删除已删除的会话对象
我有一个非常简单的问题。假设会话对象不存在或已删除,并且我正在使用sessionMap.removenon\u现有的\u对象\u键或已删除的\u对象。那么会发生什么?它会引发异常吗?您可以看到SessionMap的代码 删除指定的会话属性 参数: 输入要删除的属性的名称 返回: 已删除的值,如果未找到该值,则为null,因此未删除Java 正在删除已删除的会话对象,java,session,Java,Session,我有一个非常简单的问题。假设会话对象不存在或已删除,并且我正在使用sessionMap.removenon\u现有的\u对象\u键或已删除的\u对象。那么会发生什么?它会引发异常吗?您可以看到SessionMap的代码 删除指定的会话属性 参数: 输入要删除的属性的名称 返回: 已删除的值,如果未找到该值,则为null,因此未删除 public V More ...remove(Object key) { if (session == null) { return null;
public V More ...remove(Object key) {
if (session == null) {
return null;
}
synchronized (session) {
entries = null;
V value = get(key);
session.removeAttribute(key.toString());
return value;
}
}
但在remove方法的一行中,它调用HttpSession方法removeAttributeString键为:
如果在一个实例上调用它,这将抛出IllegalStateException
无效会话
你可以查一下
session.removeAttribute(key.toString());