(转载)servlet知识点

知识点1: servlet怎样通过通过sessionId获取session?

Servlet2.1之后不支持SessionContext里面getSession(String id)方法。

但是,我们可以通过HttpSessionListener监听器和全局静态map自己实现一个SessionContext。

原文链接:https://blog.csdn.net/sihai12345/article/details/81098765

知识点2:session 的过期机制

session.maxINactiveInterval(int)可以设置时间

1小时=3600, session.maxINactiveInterval(3600)

既然有生效时间,为什么我们在浏览器上关闭页面之后感觉session就失效了?

session是存在在服务器端的,在生效时间之内,session还是存在在服务端的,只是关闭页面,打开一个新页面的时候,

 页面请求会在后端生成一个新的session,新老session的id不一样,在新session上获取老session的属性,自然获取不到。

所以我们在请求中会带上sessionId(例如在cookie中存储,url中以参数形式带上)

待续学习...

猜你喜欢

转载自blog.csdn.net/nanbiandehe/article/details/85275556