JSP 自動刷新
想像一下,如果要直播比賽的比分,或股票市場的即時狀態,或當前的外匯配給,該怎麼實現呢?顯然,要實現這種即時功能,您就不得不規律性地刷新頁面。
JSP提供了一種機制來使這種工作變得簡單,它能夠定時地自動刷新頁面。
刷新一個頁面最簡單的方式就是使用response對象的setIntHeader()方法。這個方法的簽名如下:
public void setIntHeader(String header, int headerValue)
這個方法通知流覽器在給定的時間後刷新,時間以秒為單位。
頁面自動刷新程式示例
這個例子使用了setIntHeader()方法來設置刷新頭,模擬一個數字時鐘:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<html>
<head>
<title>自動刷新實例</title>
</head>
<body>
<h2>自動刷新實</h2>
<%
// 設置每隔5秒刷新一次
response.setIntHeader("Refresh", 5);
// 獲取當前時間
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("當前時間為: " + CT + "\n");
%>
</body>
</html>
把以上代碼保存在main.jsp檔中,訪問它。它會每隔5秒鐘刷新一次頁面並獲取系統當前時間。運行結果如下:
自動刷新實 當前時間為: 6:5:36 PM
您也可以自己動手寫個更複雜點的程式。
