Java HttpSession .getAttribute(字符串名称)

Dis*_*ame 4 java httpsession getattribute jakarta-ee

我有一个简单而简短的问题,但在任何地方都找不到答案。我创建了一个 HttpSession 并想从中获取一个属性,例如一个 User 对象。

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

问题如下: .getAttribute 函数获取一个字符串名称作为参数 - 名称是什么?我从哪里知道名字的?它是在某处预定义的吗?- 那么在哪里定义另一个?

谢谢!

LeH*_*ill 7

通常,您自己向会话添加属性,如下所示:

User someObject = new User();
session.setAttribute("pickaName", someObject);
Run Code Online (Sandbox Code Playgroud)

然后您可以获取会话并使用您之前使用的相同名称取消此属性,如下所示:

User sameObject = (User) session.getAttribute("pickaName");
Run Code Online (Sandbox Code Playgroud)