兄弟们,有一请求,望大家帮忙!!!
如果数据库表中的数据按照时间间隔,一秒更新一次,那我们的web前台要实时的查看数据库中的数据,不用一直点击刷新,怎么实现啊!
兄弟们,提前说一声,肯定是能实现,因为我见过,工业上比如水位在线监控,完全可以用web监控的,而且,没有需要加载客户端插件!
提点建议谢谢了
如果数据库表中的数据按照时间间隔,一秒更新一次,那我们的web前台要实时的查看数据库中的数据,不用一直点击刷新,怎么实现啊!
兄弟们,提前说一声,肯定是能实现,因为我见过,工业上比如水位在线监控,完全可以用web监控的,而且,没有需要加载客户端插件!
提点建议谢谢了
解决方案 »
- java 版ckeditor和ckfinder整合后,动态更改baseurl
- 一个查询问题
- 关于ext中Grid与store的问题
- 在做网页时利用Javascript检查表单内容是否符合要求,如不符合点击出现反馈信息仍跳回原来页面,怎么实现?
- jsp中如何防止外部提交
- 招聘程序员两名,版主留情!我也是为兄弟们着想啊!
- 只有部分java理论基础,没有实际项目经验,用java做Web开发(jsp+servlet+javabean)多长时间能成为熟手?
- hql查不到数据的情况
- 帮我看看2个jsp程序哪个是对的!!!!在线等!!!
- 一个关于jsp的小疑问:
- poi3.5的cell.setEncoding()方法
- javaweb-div中如何放置入一个网页
还有问大家个低级的问题,如果有一个软件采集水位的数据,存入数据库,我要采集他的数据,从数据库采集好,还是从他的接口取数据好,从他的接口数据困难不????
谢谢!
2 var limit="0:10"
3 if (document.images){
4 var parselimit=limit.split(":");
5 parselimit=parselimit[0]*60+parselimit[1]*1;
6 }
7 function beginrefresh(){
8 if (!document.images)
9 return;
10 if (parselimit==1)
11 window.location.reload();
12 else{
13 parselimit-=1;
14 curmin=Math.floor(parselimit/60);
15 cursec=parselimit%60;
16 if (curmin!=0)
17 curtime=curmin+" min "+cursec+" sec ";
18 else
19 curtime=cursec+" sec ";
20 window.status=curtime;
21 setTimeout("beginrefresh()",1000);
22 }
23 }
24 window.onload=beginrefresh;25 </script>加到body中间,这里是0:10为10秒钟,可以自定义
Code <script type="text/javascript"> function makeRequest() { var guid = rnd(); //记住给个随机数,不然的话有缓存 var url = "example_b.aspx?id=" + guid; createXMLHttpRequest(); xmlHttp.onreadystatechange = handleRefresh; xmlHttp.open("GET", url, false); xmlHttp.send(null); } //创建xmlHttp var xmlHttp; function createXMLHttpRequest() { if (window.ActiveXObject) { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } else if (window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); } } //返回信息 function handleRefresh() { if (xmlHttp.readyState == 4) { if (xmlHttp.status == 200) { if (xmlHttp.responseText == "sessionNull") { //alert('登录超时,帐户注销,请重新登录...'); window.parent.document.location = "UserLogin.aspx"; } setTimeout("makeRequest()", 8*000); } } } //创建随机数 rnd.today = new Date(); rnd.seed = rnd.today.getTime(); function rnd() { rnd.seed = (rnd.seed * 9301 + 49297) % 233280; return rnd.seed / (233280.0); } function rand(number) { return Math.ceil(rnd() * number); } </script> 举个例子,比如说要example_a.aspx页面加载以后让测试页面example_b.aspx每8秒刷新一次,检查存放登录用户名的session值是否为空,如果session为空,则返回登录页面。那么我们可以将上面的js代码放在example_a.aspx页面的<head></head>标记之间,然后在页面body的onload事件中调用上面的方法:onload="makeRequest()",然后在页面的Page_Load事件中判断: if (Session["user"] == null)Code { Response.Clear(); Response.Write("sessionNull"); Response.End(); }
var x = 0;
function makeRequest() {
var guid = rnd();
//记住给个随机数,不然的话有缓存
var url = "TestPage.aspx?id=" + guid;
createXMLHttpRequest();
xmlHttp.onreadystatechange = handleRefresh;
xmlHttp.open("GET", url, false);
xmlHttp.send(null);
x++;
}
//创建xmlHttp
var xmlHttp;
function createXMLHttpRequest() {
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
}//返回信息
function handleRefresh() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
//每60秒刷新一次页面
if (xmlHttp.responseText == "sessionNull") {
//alert('登录超时,帐户注销,请重新登录...');
window.parent.document.location = "UserLogin.aspx";
}
if (x < 150) {
setTimeout("makeRequest()", 8*000);
}
}
}
}//创建随机数
rnd.today = new Date();
rnd.seed = rnd.today.getTime();
function rnd() {
rnd.seed = (rnd.seed * 9301 + 49297) % 233280;
return rnd.seed / (233280.0);
}
function rand(number) {
return Math.ceil(rnd() * number);
}
ajax即可实现刷新。
采集数据,如果实时性要求高,则他的数据库数据更实时,就取数据库,如果接口数据更实时,就取接口。这个要随业务需求来的。
相对来说,从数据库取数据容易点,无非就是select/insert之类。接口的话有的还得调试半天,还得针对他写接口的语言来调用,相对麻烦
个人意见,仅供参考