JSPでWebページを自動更新する方法|setIntHeader()の使い方と実装例
JSPには、指定した時間間隔でWebページを自動的に再読み込みさせる仕組みが用意されています。この機能を活用すれば、株価表示やニュース速報、デジタル時計など、リアルタイム性が求められるコンテンツを簡単に実装できます。
setIntHeader()メソッドによる自動更新の基本
Webページを自動更新する最もシンプルな方法は、responseオブジェクトのsetIntHeader()メソッドを使用することです。このメソッドのシグネチャは以下の通りです。
public void setIntHeader(String header, int headerValue)
このメソッドは、ブラウザに対して「Refresh」ヘッダーを送信します。第2引数に指定した整数値は、ページを再読み込みするまでの時間間隔(秒)を表します。例えば「5」を指定すると、5秒ごとにページが自動的に更新されます。
自動ページ更新の実装例:デジタル時計
次の例では、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("Current Time: " + CT + "
");
%>
</center>
</body>
</html>動作確認の手順
上記のコードをmain.jspというファイル名で保存し、ブラウザからアクセスしてみてください。すると、以下のように5秒ごとにシステムの現在時刻が更新されて表示されます。JSPを実行したら、そのまま待って結果を確認してみましょう。
実行結果
Auto Refresh Header Example Current Time is: 9:44:50 PM
まとめ
JSPのsetIntHeader()メソッドに「Refresh」ヘッダーと秒数を指定するだけで、サーバーサイドだけで手軽にページの自動更新を実現できます。特別なJavaScriptやフレームワークは不要なので、監視画面やダッシュボードなど定期的なデータ更新が必要なページの構築にぜひ活用してください。
-
Googleカレンダーとは?基本機能と使い方を徹底解説
Googleカレンダーは、自分の予定を管理し、他の人とカレンダーを共有できる無料のウェブ・モバイルカレンダーサービスです。プライベートとビジネスのスケジュール管理に最適なツールで、シンプルな操作性ながら非常に高い機能性を備えています。Googleアカウントを持っていれば、誰でもすぐに利用を始められます。calendar.google.comにアクセスするか、Androidスマートフォンのカレンダーアプリを開くだけでOKです。Googleカレンダーのウェブ画面Googleカレンダーのインターフェースは、まさに「Googleらしい」デザインです。特徴的なパステルブルーやイエローを使ったシンプルな見
-
リフレッシュレートとは?仕組み・ちらつきの原因・最適な設定値を解説
モニターやテレビのリフレッシュレート(走査周波数)とは、画面上の画像を1秒間に描き換え(更新)できる最大回数のことです。単位はヘルツ(Hz)で表され、たとえば「60Hz」なら1秒間に60回画面を更新できることを意味します。 リフレッシュレートは、「走査レート」「水平走査周波数」「周波数」「垂直周波数」などと呼ばれることもあります。 テレビやPCモニターはどのように「更新」されるのか テレビやパソコンモニター(特にCRT方式)の画面に表示されている画像は、静止画に見えても、実際には静的なものではありません。 実際には、画像は画面上で何度も「再描画」されており、その速度は毎秒60回、75回、85回