救急~~~~~~session 存储多个用户信息 怎么解决?
登陆的时候 ie7.0 多个选项卡
我在session 中存储用户 信息 session.setAttribute(“username”, userId);
发现里边只有一个 值 每登陆一次就会覆盖那个“username”
如果打开三个选项卡 “username” 中只有最后一次登陆的用户信息 导致 丢失了两个用户的信息
我的解决方案计划--------
同一个session中设置多个Attribute 每一个用户登陆都注册信息
这样不会丢失用户信息
但是我在消除信息的时候出现了问题 (不能销毁session 他里边放的所有用户)
我该怎么判断是那个Attribute 的内容需要销毁
(难道要在每个页面中都做个请求 放入参数?有没有别的办法)
各位大哥大姐 想想办法!~~~~
------解决方案--------------------你不要用选项卡,好像选项卡是采用原来的页面派生出来的。这样就共用了一个session。
你重新打开IE,用两个IE,或者另外一个用firefox。这样可以解决问题。
有时候,IE7不是很好。
偶都用IE6。。
------解决方案--------------------我的笨办法:设置一个static的变量i,用来记录此用户是第几个登陆的。
然后 session.setAttribute(“username”+i, userId);
用选项卡确实是比较烦
好一点的办法:
------解决方案--------------------接上。。。。
还没有写完就回复了。。。。
好一点的办法:把用户信息记录在Application中
------解决方案--------------------可以用request.getSession(false)试试,这个方法每次返回的是新的session
------解决方案--------------------.............给session里放个map 集合不就是了,用户名为KEY,这样就不会重复了..
------解决方案--------------------那超时退出该怎么处理呢?seesion会失效