J2ee会话跟踪

时间:2015-10-29 09:42:40

标签: java jsp session servlets

在我的servlet中(登录后)我将会话超时间隔设置为30秒,并将sessionID注释为X

 session.setMaxInactiveInterval(30);

然后,servlet转发到JSP页面(intermediate1),该页面具有指向第二个中间页面(intermediate2)的链接。我在页面上没有做任何事情大约30秒(超时间隔)然后转发到第二个jsp页面(中间2)。在这里,我打印sessionID,它不是X.这是另一个值。这怎么发生的?如果没有会话,容器是否会自动将会话对象分配给JSP页面?请帮助。

3 个答案:

答案 0 :(得分:3)

JSP规范(对于JSP 2.1 / JEE6,可在“JSP.1.10.1页面指令”一章中找到)描述session隐式对象默认位于,所以每次调用JSP都将参与现有会话/如果需要,创建一个新会话。它可以 关闭:

<%@ page session="false" %>

答案 1 :(得分:1)

由于jsp implicit-object,请看其中一个是&#39; session&#39;。

所以,jsp的主要对象总是存在。

在你的情况下,当前的会话对象已经关闭,但是jsp api使它成为新的可用。

答案 2 :(得分:0)

这是我在网上找到的一个有趣的链接,可以回答我自己的问题。 FYI。

http://www.xyzws.com/jspfaq/can-i-prevent-the-creation-of-a-session-in-a-jsp-page/20