java-如何在第二个servlet中初始化会话(以获取第一个servlet在会话变量中存储的数据)

发布于 2024-11-27 01:30:46 字数 467 浏览 0 评论 0原文

我将一个变量存储在会话数据中,该变量来自用户尝试登录我的应用程序的 servlet。现在我想从同一应用程序的另一个 servlet 中的会话中检索用户数据。

如何初始化第二个 servlet 中的会话变量?将“request”作为“HttpServletRequest”,我将会话变量编码为“HttpSession session = null;”或作为 “HttpSession 会话 = request.getSession(true);”?或者是其他方式?

请注意,在应用程序流程中,用户从第一个 servlet 转到外部页面,然后从外部页面重定向到第二个 servlet。 (外部页面基本上通过 Google/Yahoo/Hotmail 等中的 oauth 登录用户)。

这是否意味着在这种情况下我不能使用会话变量?我必须使用应用程序范围的变量吗?

如果我的问题听起来很愚蠢,请原谅我,今天只是我开始在 Servlet 中编码的第三天......

I am storing a variable in session data, from a servlet where the user tries logging in to my application. Now I want to retrieve the user data from session, in another servlet in the same application.

How do I initialise the session variable in the second servlet? Taking "request" as the "HttpServletRequest" do I code the session variable as "HttpSession session = null;" or as
"HttpSession session = request.getSession(true);"? Or is it some other way?

Note that in the application flow, the user goes to an external page from the first servlet, and from the external page he is redirected to the second servlet. (The external page basically logs in the user via oauth in Google/Yahoo/Hotmail etc).

Does this mean that I cant use session variables in this case? Do I Have to use application scoped variables?

Please excuse me if my question sounds dumb, today is only the 3rd day of my starting coding in Servlets...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

川水往事 2024-12-04 01:30:46
request.getSession().setAttribute("foo", something);

应该有效。

然后您可以稍后检索数据

Object something = request.getSession().getAttribute("foo");
request.getSession().setAttribute("foo", something);

should work.

You can then later retrieve the data

Object something = request.getSession().getAttribute("foo");
巷子口的你 2024-12-04 01:30:46

Arvind,

在 JSP 中您使用:

   <% Object something = request.getSession().getAttribute( "foo" ) %>

这当然 - 毫不奇怪 - 与 Thilo 的答案非常相似...:-)

JSP 代码在服务器端评估,因此您所要做的就是确保 JSP 与 servlet 链接,例如。 servlet 的作用类似于

   response.sendRedirect( "your.jsp" )

/Anders/

Arvind,

in JSP you use:

   <% Object something = request.getSession().getAttribute( "foo" ) %>

which of course - unsurprisingly - is extremely similar to Thilo's answer... :-)

JSP code is evaluated on the server side, so all you have to is make sure that the JSP is chained from the servlet, eg. servlet does something like a

   response.sendRedirect( "your.jsp" )

/Anders/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文