JiveJdon Community Forums
在线219人 Home | 论坛 | 培训咨询 | 精华 | 查搜 | 注册 | 登陆 |
首页 » 论坛 » J2EE/JavaEE/JEE/EJB/JSF等技术讨论
???en_US.forumThreadPrev.name??? 上一主题
Go back to the topic listing   返回主题列表
???en_US.forumThreadNext.name??? 下一主题
这个主题共有 2 回复 / 1 页 [ ]  发表新帖子  回复该主题贴
remexremex

发表文章: 1
注册时间: 2003年10月30日 21:24
给他发消息
请教高手一个Tomcat+Struts的问题! 发表: 2003年10月30日 21:31 回复
http://www.chinajavaworld.net/forum/topic.cgi?forum=48&topic=2610&start=0&show=

因为大家已经讨论了很多,所以不便在这里一一的列出来,请见谅!

我用Tomcat 和Struts做了一个类似bbs的系统,现有问题请教
描述: 当有多余一个用户进入系统的时候,后面的用户会把前面的用户的信息冲掉,
我在每一个用户登陆的时候有下面的语句:

ganxie xian 
loginAction.java
....
User user = userService.getUser(id,password);
.....
session.setAttribute(Constants.SESSION_USER,user.clone());
.....

clone()就是重新new了一个User()

JSP中
<%
User user = (User)session.getAttribute("sessionUser");

String userID=user.getUser_ID();

out.println(session.getId()+"-----"+userID);

%>

结果发现还是当第二个用户登陆的时候,第一个用户的显示自动的变为第二个用户的userID ,但是sessionID不变! 什么原因啊? 各位老大?

应该没有引用的问题吧! 我都用上克隆了! 呵呵





高手请问 可能 是什么原因?

还有tomcat和Struts多用户访问的时候有什么注意的地方!或需要设置的地方?

万分感谢!



今天我用HttpSessionAttributeListener(监测session中属性值的变化)测试了一下结果发现:并没有激发attributeReplaced()事件 也就是说程序中没有对session中的值的覆盖过程, 现在可能就只有一种情况: palapalao所说的对一个值的多个引用的问题,大家帮我分析一下:
banq

发表文章: 9095
注册时间: 2002年08月03日 17:08
给他发消息
Re: 请教高手一个Tomcat+Struts的问题! 发表: 2003年10月30日 21:56 回复
session.setAttribute(Constants.SESSION_USER,user.clone());
中你的k**是Constants.SESSION_USER,这是一个常量,所以在session的attribute永远只有一个值。

你把session.setAttribute想像成hashtable.put就可以理解了。
laoer

发表文章: 36
注册时间: 2002年08月27日 15:45
给他发消息
Re: 请教高手一个Tomcat+Struts的问题! 发表: 2003年10月31日 08:33 回复
Constants.SESSION_USER
是静态变量吧!
这个主题有 2 回复 / 1 页 [ ]
???en_US.forumThreadPrev.name??? 上一主题
Go back to the topic listing   返回主题列表    返回页首  返回页首
???en_US.forumThreadNext.name??? 下一主题
热点TAG: AOP cache DDD EJB 集群 设计模式 Hibernate IOC JiveJdon OO RBAC Spring Struts
查询本论坛内 回复超过的热门帖子
快速发表回复
标题
 
粗体 斜体 下划线 插入图片 插入代码 插入url链接 插入附件
内容
 

解惑之道在J道 ,打造中国最具影响力的的企业软件社区
OpenSource JIVEJDON v3.0 Powered by JdonFramework Code © 2002-08 jdon.com

anti spam