日期:2014-05-17  浏览次数:20664 次

简单多人在线聊天
登录再数据库中做验证   ,,,用户名放在session中, 当多人聊天时,出现问题了“要是谁先说话,其他页面说话时,session 就变成了 第一个说话的人的 用户名。。而不是登陆的时候的用户名(因为我把用户名在页面上显示出来了)-----很明多个页面获取的是同一个session啊。。怎么解决??应该各个session不一样啊!!?应该都有sessionId 啊?  求大牛支招!!我没辙了//

我是穷人,不是地主,给分少,,,一定结贴的。。
聊天工具 数据库 session

------解决方案--------------------
用一个公用的session
session.setAttribute("chatting",hashMap<userId,lastWords>);

HashMap中保存的key是用户id,value里面存的是用户最后说的一句话
------解决方案--------------------
每个用户登陆后不是都记录在session中吗,聊天的记录用全局Application变量记录下,服务器页面刷新这个Application不就得到了聊天记录吗
------解决方案--------------------
引用:
“然后每个页面上 的用户名就变成了刚才发送消息的那个用户的用户名”
这个用户名是显示在页面上的?那你页面不要刷新不就行了,用ajax
页面截图发2个出来看看

这个是我做的dome,你多开几个页面试试就知道了

http://yy2q.com/chat.php