Comment vérifier si la session existe?
Il existe deux façons de détecter si la session a existé.
1) request.getSession (); + session.isNew ()
- Récupérer une session à partir de "request.getSession ();", cette fonction retournera toujours une session, quoi qu'il en soit, c'est équivalent à request.getSession (true) ;. Le seul problème est que vous ne savez pas s'il s'agit d'une session nouvelle ou existante.
- Plus tard, vous pouvez vérifier avec "session.isNew ()", true s'il s'agit d'une nouvelle session sinon retourner une session existante.
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException{ response.setContentType("text/html"); PrintWriter pw = response.getWriter(); HttpSession session = request.getSession(); if(session.isNew()){ pw.println("New session is jutst created"); }else{ pw.println("This is old session"); } }
2) request.getSession (false); + if (session == null)
- Récupérer une session depuis «request.getSession (false);», cette fonction retournera une session si elle existait, sinon une valeur nulle retournera.
- Plus tard, vous pourrez faire une vérification «null» avec l'objet de session , null signifie qu'aucune session existante n'est disponible.
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException{ response.setContentType("text/html"); PrintWriter pw = response.getWriter(); HttpSession session = request.getSession(false); if(session ==null){ pw.println("No session available"); }else{ pw.println("This is old session"); } }