关于j2ee的session的问题

下午同事发现了一个问题:同一个应用系统,在同一台电脑上,用不同的用户登录后,后面的用户会把前面用户信息覆盖掉!

代码如下:

....................................

_request.getSessionContext().add("user", user);

....................................


起初,我不以为然:应该如此啊!如果不这样,那反而不正常了!

同事接着问:要是客户要求后面的用户登陆后,不要冲掉前面的用户信息,咋处理?

由此产生了2个问题:

(1)在前面代码不变的情况下,你确定后面登陆用户会把前面登陆用户信息覆盖掉?

(2)如果不想后面用户覆盖前面用户,怎么处理?


为了严谨的证明,不是单靠嘴皮子,我决定写个小程序测试下。

建立一个J2EE工程,里面有一个jsp,用打印session.getId()的办法,来判断两次打开同一个页面是否同一个session!

结果出乎意料,竟然有种情况:

(1)如果两次用同一浏览器(注:ie9和搜狗浏览器不是同一个浏览器),两次打开的sessionid是一样的。

(2)如果两次用不同的浏览器(注:ie9和搜狗浏览器不是同一个浏览器),两次打开的sessionid是不一样的。

有了这个结论,问题的答案并迎刃而解了。




猜你喜欢

转载自blog.csdn.net/cnham/article/details/6695323
今日推荐