Un exemple simple HttpSessionListener - compteur de sessions actives
Voici un exemple simple "HttpSessionListener" pour suivre le nombre total de sessions actives dans une application Web. Si vous souhaitez continuer à surveiller le comportement de création et de suppression de votre session, pensez à cet écouteur.
Source Java
package com.example; import javax.servlet.http.HttpSessionEvent; import javax.servlet.http.HttpSessionListener; public class SessionCounterListener implements HttpSessionListener { private static int totalActiveSessions; public static int getTotalActiveSession(){ return totalActiveSessions; } @Override public void sessionCreated(HttpSessionEvent arg0) { totalActiveSessions++; System.out.println("sessionCreated - add one session into counter"); } @Override public void sessionDestroyed(HttpSessionEvent arg0) { totalActiveSessions--; System.out.println("sessionDestroyed - deduct one session from counter"); } }
web.xml
com.example.SessionCounterListener
Comment ça marche?
- Si une nouvelle session est créée, par exemple «request.getSession ();» , la sessionCreated () de l’auditeur sera exécutée.
- Si une session est détruite, par exemple le délai d’expiration de la session ou «session.invalidate ()», la sessionDestroyed () de l’auditeur sera exécutée.
HttpSession session = request.getSession(); //sessionCreated() is executed session.setAttribute("url", "example.com"); session.invalidate(); //sessionDestroyed() is executed