求教DWR的 Reverse Ajax!

想实现类似股市行情的那种页面动态刷新数据,数据库一旦有数据修改或插入、更新 则服务器就通过DWR的推技术实时更新页面上的列表里面的数据,虽然官网上有demo,看的不是很明白,而且是动态生成的表格,我需要的是表格固定 至更改数据,希望高手可以帮帮我。给了类似的demo看看也可以! 谢谢了 cheney.cn@live.cn

dwr

2个回答

[b][color=red]第三步:Web页面内容[/color][/b]
补充:这里的文件名是[color=red]index.html[/color]

[color=red]说明:可以将以下count值改变为表格内容,即可满足你的要求[/color]

[color=red]以下代码演示内容:[/color]
[color=green]后台服务不停地累加count值,同时将count值推送到前台页面(index.html)中(表现为前台页面count值不停地累加显示)[/color]

[color=red][b]第一步:创建后台推送服务[/b][/color]

[color=blue]Color.java[/color]
[code="java"]
import java.util.Timer;
import java.util.TimerTask;

import org.directwebremoting.Browser;
import org.directwebremoting.ServerContextFactory;
import org.directwebremoting.ui.dwr.Util;

public class Clock {
private long count = 0;//计数器,web页面用来显示

public Clock() {

// 创建一个定时任务,每隔10秒count自动加一
Timer t = new Timer();
t.schedule(new TimerTask() {
public void run() {
count++;
}
}, 0,10);
}

// 通过无限循环调用setClockDisplay()刷新Web页面的数字内容
public synchronized void toggle() {
    while (true) {
        setClockDisplay(count+"");          
        //休眠一秒
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

// 刷新index.html页面中<div id='clockDisplay'/>的内容,
// 即显示count的数值
public void setClockDisplay(final String output) {
    String page = ServerContextFactory.get().getContextPath()
            + "/index.html";
    Browser.withPage(page, new Runnable() {
        public void run() {
            Util.setValue("clockDisplay", output);
        }
    });
}

}
[/code]

[color=red][b]第二步:配置dwr.xml[/b][/color]

[code="xml"]
<!DOCTYPE dwr PUBLIC
"-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN"
"http://getahead.org/dwr/dwr20.dtd">







[/code]

[color=red][b]第三步:Web页面内容[/b][/color]

[code="html"]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


Comet测试





<br> dwr.engine.setActiveReverseAjax(true);//开启ajax反转功能<br>



这里用来显示后台服务器推送的内容(即Count的值)



[/code]
立即提问