JSP - автоматическое обновление
В этой главе мы обсудим автоматическое обновление в JSP. Рассмотрим веб-страницу, на которой отображается текущий счет игры, статус фондовой биржи или обмен валюты. Для всех таких типов страниц вам нужно будет регулярно обновлять свою веб-страницу, используя кнопку обновления или перезагрузки в вашем браузере.
JSP упрощает эту работу, предоставляя вам механизм, с помощью которого вы можете сделать веб-страницу таким образом, чтобы она автоматически обновлялась через заданный интервал.
Самый простой способ обновить веб-страницу - использовать setIntHeader()метод объекта ответа. Ниже приводится подпись этого метода -
public void setIntHeader(String header, int headerValue)
Этот метод отправляет в браузер заголовок «Обновить» вместе с целым числом, которое указывает временной интервал в секундах.
Пример автоматического обновления страницы
В следующем примере мы будем использовать 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