考虑 servlet A 将用户绑定(bind)到如下 session :
HttpSession session = req.getSession(true);
同一用户执行后不久 属于同一应用程序的 servlet B 上的请求 servet A。
此时servlet B执行时:
HttpSession session = req.getSession(false);
session 是否为空?
最佳答案
以下是此代码返回 null 的可能原因:
- 第二次调用在 session 超时后发送
- 您在两次调用之间重新启动了服务器或重新部署了应用
- 您在两次通话之间重新启动了浏览器
- 您使用了两个不同的浏览器或计算机来执行这两个调用
- 浏览器拒绝 Cookie,并且您没有正确对 URL 进行编码以使 URL 重写 session 跟踪正常工作
- 两次调用之间的另一个调用使 session 无效
- 这两个 servlet 实际上不在同一个 Web 应用程序中
关于java - Servlet 和 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12875050/