大家好,问个自动更新的问题。

小裴同学 2011-09-28 10:37:11
我用的是servlet + jsp +mysql做的一个会议聊天室。由于我不是专业做web开发的,这个web服务器只是用来测试android客户端的,所以不是很懂。。我登录界面是一个index.jsp登录后转到loginservlet验证用户名和信息,验证完进入会议界面,同时把进入会议的人员数据存入数据库。然后在会议界面显示出来。但是怎么做到别人登录了这个服务器,其他人员的列表也自动更新呢。按F5可以。。。但是怎么做到在别人进入会议的时候其他用户界面也更新呢。。谢谢大家。帮帮忙。。。
...全文
99 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyiwanmei 2011-09-28
  • 打赏
  • 举报
回复
你可以设置一个字段,通过js定期想数据库请求一次,查看该字段的值,如果该字段的值改变,说明有新用户进入,将页面刷新,否则则不刷新。页面自动请求的js:window.setInterval("findNewData()", 6000);
小裴同学 2011-09-28
  • 打赏
  • 举报
回复
谢谢你们。你们看下我这个jsp 你们说用AJAX每隔多久去请求后台这样的。。是不是太耗资源了,如果有很多人登陆,都一直一样去请求服务器压力会不会很大啊。。
<%@page import="java.sql.ResultSet"%>
<%@page import="com.pei.database.MyDbHelper"%>
<%@page contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>会议界面</title>
</head>
<body>
<%
String username = null;
MyDbHelper db = new MyDbHelper();
String sql = "select * from test";
ResultSet rs = db.getResultSet(sql);
%>
<table width="200" border="1" align="right" cellpadding="0"
cellspacing="0" bgcolor="#F5DEB3">
<tr>
<td><div align="center">会议人员列表</div>
</td>
</tr>
<%
while (rs.next()) {
username = rs.getString("username");
String key = rs.getString("keyname");
%>
<tr>
<td><div align="center"><%=username%></div>
</td>
</tr>
<%
}
%>
</table>
</body>
</html>
oO临时工Oo 2011-09-28
  • 打赏
  • 举报
回复
在每个客户端(就是JSP里)设置一个定时器,指定时间后通过ajax或直接刷新页面来到服务器取数据,更新客户。当然这是一个异步模式,不过已经够用了。

可以参考javascript函数

setTimeout
http://baike.baidu.com/view/1861781.htm
im110 2011-09-28
  • 打赏
  • 举报
回复
可以在用户页面上用AJAX定时请求后台。
另外,可以使用“服务器端推送技术”,这个只看过资料,还没使用过。
小裴同学 2011-09-28
  • 打赏
  • 举报
回复
登录的时候我的loginservlet可以接受到,不需要监听。但是关键是怎么去刷新别人已经打开了的网页。。
绝世酱油瓶 2011-09-28
  • 打赏
  • 举报
回复
对服务器的登录做个监听吧。。。有新的用户登录就把所有用户的列表全部刷新一遍
小裴同学 2011-09-28
  • 打赏
  • 举报
回复
对的,用服务器推送技术可以很好的解决。但是不会哇,有木有参考资料神马的哇。
demonapple 2011-09-28
  • 打赏
  • 举报
回复
服务器端推送技术
应该是这种技术吧
小裴同学 2011-09-28
  • 打赏
  • 举报
回复
谢谢各位。web开发菜鸟伤不起啊。。

81,091

社区成员

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

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