JSP中自动刷新
以下内容引用自http://wiki.jikexueyuan.com/project/jsp/auto-refresh.html:
细想一个显示在线比赛分数、股市状态或当前交易额的网页。对于所有这种类型的网页,需要通过浏览器中的更新或者重新载入按钮定期的刷新网页。
通过提供一个在给定的间距后自动刷新网页的机制,可以使JSP更加容易运行。
刷新网页最简单的方法就是使用Request对象的setIntHeader()方法。下面是这个方法的符号描述:
public void setIntHeader(String header, int headerValue)
此方法将标题“刷新”以及以秒为单位的时间间隔的整数值返回给浏览器。
自动页面刷新例子
下面的例子使用setIntHeader()方法设置Refresh标头来模拟数字计时器:
<%@ page import="java.io.*,java.util.*" %> <html> <head> <title>Auto Refresh Header Example</title> </head> <body> <center> <h2>Auto Refresh Header Example</h2> <% // Set refresh, autoload time as 5 seconds response.setIntHeader("Refresh", 5); // Get current time Calendar calendar = new GregorianCalendar(); String am_pm; int hour = calendar.get(Calendar.HOUR); int minute = calendar.get(Calendar.MINUTE); int second = calendar.get(Calendar.SECOND); if(calendar.get(Calendar.AM_PM) == 0) am_pm = "AM"; else am_pm = "PM"; String CT = hour+":"+ minute +":"+ second +" "+ am_pm; out.println("Crrent Time: " + CT + "\n"); %> </center> </body> </html>
现在将上面的代码放在main.jsp中,并且访问它。它将在之后每隔5s显示当前系统时间。只运行此JSP页面,等待一会可以看到如下结果:
测试工程:https://github.com/easonjim/5_java_example/tree/master/jspbasics/test15