当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 许多Web应用、企业应用涉及到长时间的操作,例如复杂的数据库查询或繁重的XML处理等,虽然这些任务主要由数据库系统或中间件完成,但任务执行的结果仍旧要借助JSP才能发送给用户。
 

 

 ·jsp语法(8)——<jsp:forward>    »显示摘要«
    摘要: <jsp:forward> 重定向一个html文件,jsp文件,或者是一个程序段. jsp 语法 <jsp:forward page={"relativeurl" | "<%= expression %>"} /> or <jsp:forward page={"relativeurl" | "<%= expression %>"} > <j......
    摘要:   在我们前面的章节中,任何的html文件都可以转变成jsp文件,做法是通过改变它的扩展名为.jsp。当然,我们要知道是什么使得jsp有用呢?答案是嵌入java的能力。将下列文本放置在一个以.jsp为扩展名的文件中,比如说这个文件为myjsp.jsp,然后将这个文件放置到你的jsp目录下并且在浏览器上看它。以下是具体的代码: <html> <body> hello! the t......


JSP编程进度条设计实例

  许多web应用.企业应用涉及到长时间的操作,例如复杂的数据库查询或繁重的xml处理等,虽然这些任务主要由数据库系统或中间件完成,但任务执行的结果仍旧要借助jsp才能发送给用户.本文介绍了一种通过改进前端表现层来改善用户感觉.减轻服务器负载的办法.

  当jsp调用一个必须长时间运行的操作,且该操作的结果不能(在服务器端)缓冲,用户每次请求该页面时都必须长时间等待.很多时候,用户会失去耐心,接着尝试点击浏览器的刷新按钮,最终失望地离开. 【程序编程相关:Java Servlet和JSP教程之十

【推荐阅读:JSP技术简介之一

  本文介绍的技术是把繁重的计算任务分离开来,由一个独立的线程运行,从而解决上述问题.当用户调用jsp页面时,jsp页面会立即返回,并提示用户任务已经启动且正在执行;jsp页面自动刷新自己,报告在独立线程中运行的繁重计算任务的当前进度,直至任务完成. 【扩展信息:Java Servlet和JSP教程之十

一.模拟任务

  首先我们设计一个taskbean类,它实现java.lang.runnable接口,其run()方法在一个由jsp页面(start.jsp)启动的独立线程中运行.终止run()方法执行由另一个jsp页面stop.jsp负责.taskbean类还实现了java.io.serializable接口,这样jsp页面就可以将它作为javabean调用:

package test.barbean;

import java.io.serializable;

public class taskbean implements runnable, serializable {

    private int counter;

    private int sum;

    private boolean started;

    private boolean running;

    private int sleep;

    public taskbean() {

        counter = 0;

        sum     = 0;

        started = false;

        running = false;

        sleep   = 100;

    }

}

  taskbean包含的“繁重任务”是计算1+2+3…+100的值,不过它不通过100*(100+1)/2=5050公式计算,而是由run()方法调用work()方法100次完成计算.work()方法的代码如下所示,其中调用thread.sleep()是为了确保任务总耗时约10秒.


...   下一页
    摘要: <jsp:usebean> 创建一个bean实例并指定它的名字和作用范围. jsp 语法 <jsp:usebean id="beaninstancename" scope="page | request | session | application" { class="package.class" | type="package.class" | c......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE