JSP编程进度条设计实例
e (isRunning() && !isCompleted()) work(); } finally { setRunning(false); } } 二、启动任务
start.jsp是web.xml部署描述符中声明的欢迎页面,web.xml的内容是: <?xml version="1.0" encoding="GB2312"?> <!DOCTYPE web-app <web-app> start.jsp启动一个专用的线程来运行“繁重的任务”,然后把HTTP请求传递给status.jsp。 start.jsp页面利用<jsp:useBean>标记创建一个TaskBean的实例,将scope属性定义为session使得对于来自同一浏览器的HTTP请求,其他页面也能提取到同一个Bean对象。start.jsp通过调用session.removeAttribute("task")确保<jsp:useBean>创建了一个新的Bean对象,而不是提取一个旧对象(例如,同一个用户会话中更早的JSP页面所创建的Bean对象)。 下面是start.jsp页面的代码清单: <% session.removeAttribute("task"); %> <jsp:useBean id="task" scope="session" <% task.setRunning(true); %> 现在有两个线程在并发执行:执行JSP页面的线程(称之为“JSP线程”),由JSP页面创建的线程(称之为“任务线程”)。接下来,start.jsp利用调用status.jsp,status.jsp显示出进度条以及任务的执行情况。注意status.j |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |