请问session的超时到底是指什么啊?

Saro 2004-05-10 02:22:03
是到最大时间就销毁session还是用户没有发出请求一段时间就销毁session?请指教。
...全文
209 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Saro 2004-05-12
  • 打赏
  • 举报
回复
嗯,感谢诸位。揭帖了。
Saro 2004-05-11
  • 打赏
  • 举报
回复
也就是说在用户登录后,如果session.setMaxInactiveInterval(30)的话,用户30秒没发出请求,就将用户的session销毁是吗?
------------------------------------------------------------
|JSP或Servlet一访问会话对象,会话对象的活动间隔时间就被设置为0|
————------------------------------------------------------
是指每个jsp页面吗?那我设定用户30秒没有发出请求,就将用户的session销毁岂不是无法做到?
当我设定了实现HttpSessionListener接口的listener后,发现如果session.setMaxInactiveInterval(5),然后等待超时就会触发public void sessionDestroyed(HttpSessionEvent se) 方法,但是我将浏览器关掉后,放在session中的"userID"不见了,sessionDestroyed方法却没有触发。实现HttpSessionAttributeListener接口也不能捕捉到session中的"userID"被删除的事件,为什么???
judyhui7612 2004-05-10
  • 打赏
  • 举报
回复
只要JSP或Servlet一访问会话对象,会话对象的活动间隔时间就被设置为0
goldenhua 2004-05-10
  • 打赏
  • 举报
回复
呵呵,真失败,没看清问题;应该是“用户没有发出请求一段时间就销毁session”。
goldenhua 2004-05-10
  • 打赏
  • 举报
回复
Web容器有一个session管理器,一个session用一个session ID来标识,使用此session ID可以访问session管理器保持着的对象;当存在session的情况下,浏览器在和Web服务器交互时会传递session ID(可以通过cookie、URL、hidden input等方式交换);session过期是指在经过一段时间浏览器没有发包含相应的session ID的请求后,Web服务器上的session管理器就将与此session ID相关联的对象销毁掉,资源释放掉,状态也就不再保持了,此session ID也就不再被识别出了。

这下子说的够详细吧?
treeroot 2004-05-10
  • 打赏
  • 举报
回复
晚了一步,楼上的说得对。

judyhui7612 2004-05-10
  • 打赏
  • 举报
回复
用户没有发出请求一段时间就销毁session

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧