如何清除所有用户的Session.

fzufish 2005-01-16 08:08:37
本人想把tomcat服务上的所有的Session清除,不知从何下手,请各位大侠帮忙。
...全文
3214 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
djpsunday 2005-01-17
  • 打赏
  • 举报
回复
支持: GJA106(中文字符) 的做法,很不错的方法,最好用接口的实现来处理,欢迎: GJA106(中文字符) ( 加入 1673161 QQ群组!
hxzg001 2005-01-17
  • 打赏
  • 举报
回复
同意GJA106(中文字符)的意见
fzufish 2005-01-17
  • 打赏
  • 举报
回复
GJA106(中文字符) 能不能给个详解。。。谢谢各位支持。。。继续继续
jFresH_MaN 2005-01-17
  • 打赏
  • 举报
回复
使用HttpSessionListener来监听session的创建,然后保存下来,最后就可以处理了
GJA106 2005-01-17
  • 打赏
  • 举报
回复
在用户登录处理类中,把该用户的session信息保存到HashTable/HashMap中,这样就可以--想怎么处理就怎么处理。按时间清除、按用户清除、踢用户、把失效用户删除...
dabo1980 2005-01-17
  • 打赏
  • 举报
回复
关注!不知道用文件或者数据库中转一下行不行!
fzufish 2005-01-17
  • 打赏
  • 举报
回复
funcreal(new PLMM[Integer.MAX_VALUE]) 可能理解误差。。。我想做的是清除所有用户Session,
session.invalidate();只能清除当前用户自己的Session.还是没解决问题。得遍历所有用户Session,这个怎么操作呢?也就是要取web服务器上所有用户的Session,如果该Session是某个时间点前创建的就把它清除掉。
lfengxu 2005-01-17
  • 打赏
  • 举报
回复
public void clearSession(String catalog)
{

for (Enumeration items = session.getAttributeNames();
items.hasMoreElements();
)
{
String item = (String) items.nextElement();
if (item.startsWith(catalog))
session.removeAttribute(item);
}
}
funcreal 2005-01-17
  • 打赏
  • 举报
回复
session.invalidate();这个就可以了阿
shagan 2005-01-17
  • 打赏
  • 举报
回复
不太同意GJA106(中文字符),我倒是觉得同意jFresH_MaN(我本将心照明月,奈何明月照沟渠!)
如果通过登录去管session,而session过时又无从知道
对于HttpSessionListener,有两个方法,产生新session时运行和session失效时运行,当新session产生,就把此session放入到map中,session失效时,删除。
这样,再通过invalidate就可以了。
ETCN 2005-01-17
  • 打赏
  • 举报
回复
关注ing,帮顶。

我只知道有个getMaxInactiveInterval()可以获得Session的有效时间。
otrade 2005-01-16
  • 打赏
  • 举报
回复
既然有个时间点,就以时间点为条件来使用Session..Abandon或者sessionid=""什么的就可以了
gumplei 2005-01-16
  • 打赏
  • 举报
回复
session.invalidate();
别的都不知道,帮你up
fzufish 2005-01-16
  • 打赏
  • 举报
回复
由于工作上需要,得把某个时间点之前的Session全部清除掉,所以得写个东东处理Session...当然不能重新启动服务器了。Web服务还是不能停止。看来只能遍历所有用户Session来判断了。。
如何取到服务中的所有Session还有Session创建的时间等信息....谢谢!继续赐教。。
lovenature 2005-01-16
  • 打赏
  • 举报
回复
好像有一个getAllSession,得到一个list,然后再invalidate吧
VincentSailing 2005-01-16
  • 打赏
  • 举报
回复
自动获得所有用户的session,然后做一个遍历依次session.invalidate()就行了!不过,还真不如定时重启。
jFresH_MaN 2005-01-16
  • 打赏
  • 举报
回复
session.invalidate();
如果要清除所有session的话,必须先得到所有的session。
那这时我就有一个问题,楼主所说的清除所有session是说你想自己写一个类来清除呢?还是写一个jsp来实现?
如果是在运行一段时间不需要再为任何用户服务了就清除它们,那你不如直接重新启动你的服务器!
fzufish 2005-01-16
  • 打赏
  • 举报
回复
当然不是重启服务之类的,通过jsp如何实现。谢谢。

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧