JSP - 自動重新整理



本章將討論 JSP 中的自動重新整理。考慮一個顯示即時遊戲比分、股市行情或貨幣匯率的網頁。對於所有此類頁面,您需要使用瀏覽器的重新整理或重新載入按鈕定期重新整理網頁。

JSP 透過提供一種機制簡化了這項工作,您可以透過這種機制建立這樣的網頁:它會在給定的時間間隔後自動重新整理。

重新整理網頁最簡單的方法是使用 response 物件的 setIntHeader() 方法。以下是此方法的簽名:

public void setIntHeader(String header, int headerValue)

此方法將“Refresh”標題以及表示時間間隔(秒)的整數值傳送回瀏覽器。

自動頁面重新整理示例

在下面的示例中,我們將使用 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 並嘗試訪問它。這將每 5 秒顯示一次當前系統時間,如下所示。只需執行 JSP 並等待檢視結果:

Auto Refresh Header Example

Current Time is: 9:44:50 PM
廣告