利用AJAX技术实现网页无刷新进度条显示
作者: , 出处:网络整理, 责任编辑: 李春禹,
2007-11-15 09:48
在网页中实现页面无刷新的进度条显示不是一件很麻烦的事情,但如果这个进度条要能准确反映当前事务或者复杂逻辑的执行进度,那么却并不是一件容易的事情,目前AJAX技术流行,所以本文作者试想通过AJAX来实现网页准确进度条,以銄读者。
首先应该想一个问题,复杂事务或者事务逻辑如果不按线程方式运行,运行在JAVA运行中根本无法跳过复杂事务去处理进度显示,所以我们这边很自然的想到复杂事务或者业务逻辑用多线程实现。
再想另一个问题,事务处理应该需要网页上的一系列参数信息的,那么如何获取这些参数呢,这个似乎容易想到,传一个HttpServletRequest过去就可以了。
为了进度条公用,所有的复杂事务处理都应该实现同一个接口或者抽象类,我这里用了一个接口,如下:
| public interface IprogressBar {
public void execute(HttpServletRequest req,String pbid);//执行复杂事务 } |
| public interface IprogressBar {
public void execute(HttpServletRequest req,String pbid);//执行复杂事务 } |
| public class TestPB extends AbstractProgressBar{
public void execute(HttpServletRequest req, String pbid) { String sql="insert into temp_table(idx)values(?)"; int pid=Integer.parseInt(pbid); ProgressBar pb=new ProgressBar(pid,300,0,1); |
| for(int i=0;i<300;i ){
DbUtils.executeUpdate(sql,new Object[]{new Integer(i)}); |
| pb.stepIt();
} } } |
- 本文关键词:

