Tout d'abord, ces statistiques ont un défaut dans le nombre de personnes en ligne. Une personne peut avoir plusieurs sessions en même temps, ce qui a entraîné certaines statistiques inexactes.
Ensuite, commencez à écrire le code.
Étape 1: Implémentez la méthode dans httpSessionListener, ajoutez l'annotation @weblistener
@WeBListener public class SessionListener implémente httpSessionListener {public void sessionCreated (httpSessionEvent arg0) {// TODO Méthode générée automatique Stub servletContext context = arg0.getSession (). GetServletContext (); if (context.getAttribute ("count") == null) {context.setAttribute ("count", 0); } else {int count = (Integer) context.getAttribute ("count"); context.setAttribute ("count", count + 1); }} public void SessionDestRoyed (httSessessionEvent arg0) {// TODO Méthode générée automatique Stub servletContext context = arg0.getSession (). getServletContext (); if (context.getAttribute ("count") == null) {context.setAttribute ("count", 0); } else {int count = (Integer) context.getAttribute ("count"); if (count <1) {count = 1; } context.setAttribute ("count", count-1); } HttpSession session = arg0.getSession (); String name = (string) session.getAttribute ("name"); HashSet <string> nameset = (hashset <string>) context.getAttribute ("nameset"); NameSet.Remove (nom); }}Étape 2: Contrôlez la création de la session et mettez-la dans l'objet
HttpSession session = request.getSession (); session.setAttribute ("name", nom); Objet count = context.getAttribute ("count"); if (count == null) {count = 0; }Étape 3: Démarrez la classe avec l'annotation @servletcomponentscan, afin que vous puissiez scanner à l'auditeur
Remarque, ce code convient au développement de Spring-Boot
Autrement dit, ajoutez un auditeur à Javaweb sur web.xml
<Douger> <écouteur-classe> zjq.Listener.SessionListener </ écouteur-classe> </diner>
Résumer
Ce qui précède est le code d'implémentation pour Spring Boot pour compter le nombre d'utilisateurs en ligne via le moniteur HTTPSessionListener que l'éditeur vous a présenté. J'espère que ce sera utile à tout le monde. Si vous avez des questions, veuillez me laisser un message et l'éditeur répondra à tout le monde à temps. Merci beaucoup pour votre soutien au site Web Wulin.com!