Stockage et récupération des données utilisateur avec la session
Stockage des données utilisateur dans la session
Pour stocker les données utilisateur dans la session, vous pouvez utiliser la méthode HttpSession.setAttribute()
. Cette méthode prend deux arguments : le nom de l'attribut et l'objet à stocker.
// Example: Storing user data in the session
HttpServletRequest request = ...;
HttpSession session = request.getSession();
// Store user data in the session
session.setAttribute("username", "johndoe");
session.setAttribute("email", "[email protected]");
session.setAttribute("cart", new ShoppingCart());
Dans l'exemple ci-dessus, nous stockons le nom d'utilisateur, l'adresse e-mail et un objet panier d'achat de l'utilisateur dans la session.
Récupération des données utilisateur depuis la session
Pour récupérer les données utilisateur depuis la session, vous pouvez utiliser la méthode HttpSession.getAttribute()
. Cette méthode prend le nom de l'attribut en argument et renvoie l'objet correspondant.
// Example: Retrieving user data from the session
HttpServletRequest request = ...;
HttpSession session = request.getSession();
// Retrieve user data from the session
String username = (String) session.getAttribute("username");
String email = (String) session.getAttribute("email");
ShoppingCart cart = (ShoppingCart) session.getAttribute("cart");
Dans l'exemple ci-dessus, nous récupérons le nom d'utilisateur, l'adresse e-mail et l'objet panier d'achat de l'utilisateur depuis la session.
Portée et durée de vie de la session
Les données de session sont stockées côté serveur et sont associées à la session d'un utilisateur spécifique. La session a une durée de vie limitée, qui est généralement configurée dans le descripteur de déploiement de l'application web (par exemple, le fichier web.xml
). Par défaut, la session expire après 30 minutes d'inactivité.
sequenceDiagram
participant Client
participant Server
Client->>Server: HTTP Request
Server->>Server: Create Session
Server->>Client: HTTP Response with Session ID
Client->>Server: HTTP Request with Session ID
Server->>Server: Retrieve Session Data
Server->>Client: HTTP Response with Session Data
Server->>Server: Session Expires
En comprenant comment stocker et récupérer les données utilisateur à l'aide de la session, vous pouvez gérer efficacement l'état de l'utilisateur et offrir une expérience personnalisée dans vos applications web basées sur Java Servlet.