当前位置: 首页 > 图文教程 > 网络编程 > JSP > JSP编程进度条设计实例(2)

JSP
JavaBeans 程序开发从入门到精通教程
企业级应用中的Applet和Servlet的通信(一)
企业级应用中的Applet和Servlet的通信(三)
企业级应用中的Applet和Servlet的通信 (二)
Web开发中防止浏览器的刷新键引起系统操作重复提交
谈一下关于XHTML网页的制作
40种网页常用小技巧(javascript)←↓------[不时之需]
使用xmlhttp和Java session监听改善站内消息系统
JSP简明教程:行为标签与实例(转
jsp与javascript的结合在页面间传递参数
最基本的一个转换密码字符串为乱码以及解码的程序
55种网页常用小技巧(javascript)
jsp中标签的部署与调用
用jsp动态输出excel文档和中文乱码问题的解决
J2SDK和TOMCAT的安装及配置
web开发中的多条件查询处理技巧1则
JSP连接Mysql数据库攻略
Tomcat的Servlet配制
JSP/Servlet 中的汉字编码问题
Taglib原理和实现 第五章:再论支持El表达式和jstl标签

JSP编程进度条设计实例(2)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-04   浏览: 63 ::
收藏到网摘: n/a

  如果任务已经启动,isStarted()方法将返回true:


public synchronized boolean isStarted() {
    return started;
}
 


  如果任务已经完成,isCompleted()方法将返回true:


public synchronized boolean isCompleted() {
    return counter == 100;
}
 


  如果任务正在运行,isRunning()方法将返回true:


public synchronized boolean isRunning() {
    return running;
}



  SetRunning()方法由start.jsp或stop.jsp调用,当running参数是true时。SetRunning()方法还要将任务标记为“已经启动”。调用setRunning(false)表示要求run()方法停止执行。


public synchronized void setRunning(boolean running) {
    this.running = running;
    if (running)
        started  = true;
}
 
  任务执行完毕后,调用getResult()方法返回计算结果;如果任务尚未执行完毕,它返回null:


public synchronized Object getResult() {
    if (isCompleted())
        return new Integer(sum);
    else
        return null;
}
 
  当running标记为true、completed标记为false时,run()方法调用work()。在实际应用中,run()方法也许要执行复杂的SQL查询、解析大型XML文档,或者调用消耗大量CPU时间的EJB方法。注意“繁重的任务”可能要在远程服务器上执行。报告结果的JSP页面有两种选择:或者等待任务结束,或者使用一个进度条。


public void run() {
    try {
        setRunning(true);
        while (isRunning() && !isCompleted())
            work();
    } finally {
        setRunning(false);
    }
}