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

Actualisation automatique JSP

Imaginez, si vous deviez diffuser en direct les scores d'un match, ou l'état en temps réel du marché boursier, ou la distribution actuelle des devises, comment le faire ? Il est évident que pour réaliser cette fonctionnalité en temps réel, vous devrez régulièrement rafraîchir la page.

JSP fournit un mécanisme qui rend cette tâche plus simple, permettant de rafraîchir automatiquement la page à intervalles réguliers.

Le moyen le plus simple de rafraîchir une page est d'utiliser la méthode setIntHeader() de l'objet response. La signature de cette méthode est la suivante :

public void setIntHeader(String header, int headerValue)

Cette méthode notifie le navigateur de rafraîchir après un certain temps, le temps étant exprimé en secondes.

Exemple de programme de rafraîchissement automatique de la page

Cette exemple utilise la méthode setIntHeader() pour définir l'en-tête de rafraîchissement, simulant une horloge numérique :

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<html>
<head>
<title>Exemple d'actualisation automatique</<title>
</<head>
<body>
<h2>Actualisation automatique</h2>
<%
   // Réglage de la fréquence de rafraîchissement5seconde(s) de rafraîchissement
   response.setIntHeader("Refresh", 5);
   // Obtenir l'heure actuelle
   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("L'heure actuelle est: " + CT + "\n");
%>
</body>
</html>

Enregistrez le code ci-dessus dans le fichier main.jsp et accédez à celui-ci. Il rafraîchira toutes les5Rafraîchit la page toutes les secondes et récupère l'heure système actuelle. Le résultat suivant est affiché :

Actualisation automatique
L'heure actuelle est: 6:5:36 PM

Vous pouvez également écrire un programme plus complexe vous-même.