Statistiques de clics JSP


Parfois, nous avons besoin de connaître le nombre de fois qu'une certaine page a été visitée. Dans ce cas, nous devons ajouter une statistique de page à la page. Les statistiques de visites de page cumulent généralement les visites sur la page. l'utilisateur le charge pour la première fois.

Pour implémenter un compteur, vous pouvez utiliser l'objet implicite de l'application et les méthodes associées getAttribute() et setAttribute() pour y parvenir.

Cet objet représente tout le cycle de vie de la page JSP. Cet objet est créé lorsque la page JSP est initialisée et supprimé lorsque la page JSP appelle jspDestroy().

Voici la syntaxe de création de variables dans votre application :

application.setAttribute(String Key, Object Value);

Vous pouvez utiliser la méthode ci-dessus pour définir une variable de compteur et mettre à jour la valeur de la variable. La méthode pour lire cette variable est la suivante :

application.getAttribute(String Key);

À chaque accès à la page, vous pouvez lire la valeur actuelle du compteur, l'incrémenter de 1, puis la réinitialiser, et la nouvelle valeur sera utilisé lorsque l'utilisateur suivant accède à l'affichage sur la page.


Exemple de démonstration

Cet exemple présentera comment utiliser JSP pour calculer le nombre total de personnes visitant une page spécifique. Si vous souhaitez calculer le nombre total de clics sur les pages utilisées sur votre site internet, alors vous devez mettre ce code sur toutes les pages JSP.

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<html>
<html>
<head>
<title>访问量统计</title>
</head>
<body>
<%
    Integer hitsCount = 
      (Integer)application.getAttribute("hitCounter");
    if( hitsCount ==null || hitsCount == 0 ){
       /* 第一次访问 */
       out.println("欢迎访问php中文网!");
       hitsCount = 1;
    }else{
       /* 返回访问值 */
       out.println("欢迎再次访问php中文网!");
       hitsCount += 1;
    }
    application.setAttribute("hitCounter", hitsCount);
%>

<p>页面访问量为: <%= hitsCount%></p>


</body>
</html>

Maintenant, nous plaçons le code ci-dessus sur le fichier main.jsp et accédons au fichier http://localhost:8080/testjsp/main.jsp. Vous verrez que la page générera un compteur, et à chaque fois que nous actualiserons la page, le compteur changera (incrémenté de 1 à chaque actualisation).

Vous pouvez également y accéder via différents navigateurs, et le compteur augmentera de 1 après chaque visite. Comme indiqué ci-dessous :



Réinitialiser le compteur

En utilisant la méthode ci-dessus, le compteur sera réinitialisé après le serveur Web est redémarré. est 0, c'est-à-dire que les données précédemment conservées disparaîtront. Vous pouvez utiliser les méthodes suivantes pour résoudre ce problème :

  • Définir un nombre de tables de données dans la base de données pour le comptage Web. visites de pages. Le champ est hitcount, la valeur par défaut de hitcount est 0 et les données statistiques sont écrites dans la table de données.

  • A chaque visite nous lisons le champ hitcount dans le tableau.


  • Augmentez le nombre de visites de 1 pour chaque visite.

  • Affichez la nouvelle valeur du nombre de visites sur la page en tant que nombre de pages vues.


  • Si vous devez compter les visites de chaque page, vous pouvez utiliser la logique ci-dessus pour ajouter le code à toutes les pages.