想像一下,如果要直播比賽的比分,或是股票市場的即時狀態,或是目前的外匯配給,該怎麼實現呢?顯然,要實現這種即時功能,您就必須規律性地刷新頁面。
JSP提供了一種機制來使這種工作變得簡單,它能夠定時地自動刷新頁面。
刷新一個頁面最簡單的方式就是使用response物件的setIntHeader()方法。這個方法的簽名如下:
public void setIntHeader(String header, int headerValue)這個方法通知瀏覽器在給定的時間後刷新,時間以秒為單位。
這個例子使用了setIntHeader()方法來設定刷新頭,模擬一個數位時鐘:
<%@ 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檔案中,存取它。它會每隔5秒鐘刷新一次頁面並取得系統當前時間。運行結果如下:
Auto Refresh Header ExampleCurrent Time is: 9:44:50 PM您也可以自己動手寫個更複雜點的程式。