English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Imaginemos, se você quiser transmitir o placar de um jogo ao vivo, ou o estado em tempo real da bolsa de valores, ou a distribuição atual de câmbio, como você faria? Obviamente, para implementar essa funcionalidade em tempo real, você terá que atualizar a página regularmente.
O JSP oferece um mecanismo que simplifica este trabalho, permitindo que a página seja atualizada automaticamente em intervalos de tempo definidos.
A maneira mais simples de atualizar uma página é usar o método setIntHeader() do objeto response. A assinatura deste método é a seguinte:
public void setIntHeader(String header, int headerValue)
Este método notifica o navegador para atualizar após o tempo especificado, medido em segundos.
Este exemplo usa o método setIntHeader() para configurar o cabeçalho de atualização, simulando um relógio digital:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.io.*,java.util.*" %> <html> <head> <title>Exemplo de Atualização Automática</<title> </<head> <body> <h2>refresh automaticamente</h2> <% // definir a cada5segundos response.setIntHeader("Refresh", 5); // Obter o horário atual 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("O horário atual é: ") + CT + "\n"); %> </body> </html>
Salve o código acima no arquivo main.jsp e acesse-o. Ele atualizará a cada5a cada segundo atualiza a página e obtém o horário atual do sistema. O resultado é o seguinte:
refresh automaticamente O horário atual é: 6:5:36 PM
Você também pode escrever um programa mais complexo.