【发布时间】:2011-02-21 14:54:47
【问题描述】:
对于我收到的每个 servlet 请求,我可能会通过 10 个方法,然后我需要检查会话中的某些内容并且我需要 HttpSession。
我能获得 HttpSession 的唯一方法是从 HttpServletRequest,对吗?
如何跟踪每个 servlet 请求的会话?不幸的是,我不能简单地创建一个单例(例如,SessionInformation.instance().getAttribute("name")),因为该会话将用于所有请求。
有没有办法为每个请求全局存储会话,而不必将它(或它的信息)传递给所有方法,以防万一我需要它?
更新 1:
Alohci 把我推向了正确的方向。我需要的东西可以:
1) 设法仅通过线程全局存储变量。 “单线程”解决方案?
2) 或者 servlet 获得的每个线程/请求是否有唯一的 ID?如果有,是什么?
【问题讨论】:
-
说实话。正确的方法是传递信息。你的应用程序不应该太复杂,以至于它必须向下发送 10 种方法。谢谢大家。
标签: java google-app-engine session servlets