Представьте себе, что если вы хотите транслировать в прямом эфире счет игры, состояние фондового рынка в реальном времени или текущий валютный курс, как этого добиться? Очевидно, что для достижения этой функциональности в режиме реального времени вам необходимо регулярно обновлять страницу.
JSP предоставляет механизм, упрощающий эту работу, который может регулярно автоматически обновлять страницу.
Самый простой способ обновить страницу — использовать метод setIntHeader() объекта ответа. Сигнатура этого метода следующая:
public void setIntHeader (строковый заголовок, int headerValue)Этот метод сообщает браузеру обновиться через определенный промежуток времени, измеряемый в секундах.
В этом примере используется метод setIntHeader() для установки заголовка обновления, имитирующего цифровые часы:
<%@ page import="java.io.*,java.util.*" %><html><head><title>Пример автоматического обновления заголовка</title></head><body><center><h2 >Пример автоматического обновления заголовка</h2><% // Установка обновления, время автозагрузки 5 секунд. response.setIntHeader("Refresh", 5 // Получение текущего времени Calendar Calendar = new GregorianCalendar(); int час = Calendar.get(Calendar.HOUR); int минута = 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 = час+":"+ минута +":"+ секунда +" "+ am_pm; out.println("Текущее время: " + CT + "n"); %></center></body></html>Сохраните приведенный выше код в файле main.jsp и получите к нему доступ. Он будет обновлять страницу каждые 5 секунд и получать текущее системное время. Результаты бега следующие:
Пример автоматического обновления заголовка. Текущее время: 21:44:50.Вы также можете написать более сложную программу самостоятельно.