闂傚倷娴囬妴鈧柛瀣崌閺岀喖顢涘⿰鍐炬毉濡炪們鍎婚幏锟� (0) +1 闂備浇宕垫慨宥咁吋閸℃浼� (0) +1 闂傚倸鍊搁オ瀛樼閻戣棄绠柨鐕傛嫹 (0) +1
闂傚倷娴囬妴鈧柛瀣崌閺岀喖顢涘⿰鍐炬毉濡炪們鍎查崹鍧楀蓟閻旇 鍋撳☉娅亝鎱ㄩ崶褉鏀芥い鏇炴鐎氾拷闂傚倷绀侀幖顐ゆ偖椤愶箑纾块柛鎰嚋閼板潡鏌涘☉娆愮稇缂備讲鏅犻弻鐔碱敍濠婂喚鏆銈冨劵閹凤拷>>

正在阅读:JSP编程进度条设计实例JSP编程进度条设计实例

2004-02-14 09:33 出处:PConline 作者:俞良松编译 责任编辑:huangpeidan

  如果任务已经启动,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);
    }
}

键盘也能翻页,试试“← →”键

关注我们

最新资讯离线随时看 聊天吐槽赢奖品
闂備礁缍婂ḿ褔顢栭崱妞绘敠闁逞屽墴閹鎷呴崨濠備淮濠碘槅鍋撻幏锟�闂備焦鎮堕崕鎶藉磻濞戙垹鏄ラ悘鐐板嫎娴滄粓鏌涢锝嗙闁告棑鎷�