English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Actualización automática de JSP

Imagina, si quieres transmitir los resultados de un partido en vivo, o el estado en tiempo real del mercado de valores, o la distribución actual de divisas, ¿cómo se implementaría? Obviamente, para implementar esta función en tiempo real, es necesario actualizar la página de manera regular.

JSP proporciona un mecanismo que facilita este trabajo, permitiendo que la página se actualice automáticamente en intervalos de tiempo.

La manera más sencilla de actualizar una página es utilizando el método setIntHeader() del objeto response. La firma de este método es la siguiente:

public void setIntHeader(String header, int headerValue)

Este método notifica al navegador que actualice después de un tiempo dado, el tiempo se expresa en segundos.

Ejemplo de programa de actualización automática de la página

Este ejemplo utiliza el método setIntHeader() para configurar el encabezado de actualización, simulando un reloj digital:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<html>
<head>
<title>Ejemplo de actualización automática</<title>
</<head>
<body>
<h2>Actualización automática real</h2>
<%
   // Establecer cada5segundos actualiza
   response.setIntHeader("Refresh", 5);
   // Obtener la hora actual
   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("La hora actual es: ") + CT + "\n");
%>
</body>
</html>

Guarde el código anterior en el archivo main.jsp y accédalo. Se actualizará cada5Cada segundo se actualiza la página y se obtiene la hora actual del sistema. El resultado es el siguiente:

Actualización automática real
La hora actual es: 6:5:36 PM

También puede escribir un programa más complejo por sí mismo.