/ / Java HttpSession .getAttribute (nom de chaîne) - java, java-ee, httpsession, getattribute

Java HttpSession .getAttribute (nom de chaîne) - java, java-ee, httpsession, getattribute

J'ai une question simple et courte, mais je n'ai trouvé la réponse nulle part. J'ai créé une session HttpSession et je souhaite en tirer un attribut, par exemple un objet Utilisateur.

HttpSession session = request.getSession(true);
Object userObject = session.getAttribute("name");
if ((userObject != null) && (userObject instanceof User)) {
User currentUser = (User) userObject;
...
}

La question est la suivante: La fonction .getAttribute obtient un nom de chaîne en tant que paramètre - quel est le nom? D'où est-ce que je connais le nom? Est-ce prédéfini quelque part? - alors où en définir un autre?

Je vous remercie!

Réponses:

2 pour la réponse № 1

Habituellement, vous ajoutez vous-même des attributs à la session, comme ceci:

User someObject = new User();
session.setAttribute("pickaName", someObject);

Ensuite, vous pouvez obtenir la session et retirer cet attribut en utilisant le même nom que vous avez utilisé précédemment, comme suit:

User sameObject = (User) session.getAttribute("pickaName");

0 pour la réponse № 2

La fonction .getAttribute obtient un nom de chaîne en tant que paramètre - quel est le nom?

Si vous voulez obtenir des attributs de session, vous devez les définir sur la session avant de cette façon

User aux = new User();
HttpSession session = new HttpSession();
session.setAttribute("myUserObject", aux);
User user = (User) session.getAttribute("myUserObject");