プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

JSPでWebページの自動更新を実装する方法

JSPには、指定した間隔でWebページを自動的に再読み込み(リフレッシュ)させるための仕組みが用意されています。これを利用すれば、株価やニュース、時計など、常に最新の情報を表示したいページを簡単に作成できます。

setIntHeader()メソッドとは

ページを自動更新する最も簡単な方法は、responseオブジェクトのsetIntHeader()メソッドを使用することです。このメソッドのシグネチャは以下のとおりです。

public void setIntHeader(String header, int headerValue)

このメソッドは、ブラウザに対して「Refresh」ヘッダーと整数値(更新間隔を秒単位で指定)を送信します。ブラウザはこのヘッダーを受け取ると、指定された秒数ごとにページを自動的に再読み込みします。

自動ページ更新のサンプルコード

次の例では、setIntHeader()メソッドを使ってRefreshヘッダーを設定し、5秒ごとに現在時刻を表示するデジタル時計をシミュレートします。

<%@ page import = "java.io.*,java.util.*" %>
<html>
   <head>
      <title>Auto Refresh Header Example</title>
   </head>
   <body>
      <center>
         <h2>Auto Refresh Header Example</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");
         %>
      </center>
   </body>
</html>

上記のコードをmain.jspというファイル名で保存し、ブラウザからアクセスしてみてください。5秒ごとにシステムの現在時刻が表示され、画面が自動的に更新されます。JSPを実行して、実際に動作を確認してみましょう。

実行結果

Auto Refresh Header Example
Current Time is: 9:44:50 PM

補足:metaタグによる自動更新との違い

同様の自動更新は、HTMLのmetaタグ(<meta http-equiv="Refresh" content="5">)でも実現できます。しかし、JSPのsetIntHeader()メソッドを使えば、サーバー側の処理結果に応じて更新間隔を動的に変更できるため、より柔軟な制御が可能になります。状況に応じて使い分けるとよいでしょう。

  1. ExcelのCalendar Insightsテンプレートをカスタマイズする方法

    ExcelのCalendar Insights(カレンダーインサイト)テンプレートは、プロフェッショナルなデザインで操作性にも優れたテンプレートであり、会議の計画やスケジュール管理を効率的に行うことができます。もともとは経理業務向けに設計されたExcelアプリですが、長年の改良を重ねて、現在ではカスタムカレンダー作成用ツールとして最も人気のあるもののひとつに成長しました。前回のチュートリアルでは、Calendar InsightsブックをExcelで保存する方法をご紹介しました。今回はさらに一歩進めて、WindowsパソコンでCalendar Insightsテンプレートをカスタマイズする方法

  2. macOSカレンダーを使いこなす方法|知っておきたい便利機能を徹底解説

    生活を整理したい、大切な人の誕生日を忘れたくない――そんなニーズに、macOSのカレンダーアプリはすべて応えてくれます。カレンダーは単なる予定登録の場所ではなく、実はもっと多くの可能性を秘めています。この記事では、あなたがまだ知らないMacカレンダーの活用術をじっくりと掘り下げて紹介します。 新しいカレンダーを追加する カレンダーアプリには、仕事用・プライベート用など、思いつく限りのカレンダーをいくつでも登録できます。新しいカレンダーの追加はとても簡単です。 1. DockまたはLaunchpadから、Macでカレンダーアプリを起動します。 2. 画面上部のメニューバーから「フ