HttpSession接口Servlet 3.2最新教程
HttpSession 的会话机制其实挺常用的,是在做登录态、用户追踪这些功能时。Servlet 3.2 对 HttpSession 接口的支持还不错,主要就是帮你把客户端和服务器之间的关系维持住。你只管写业务逻辑,Session 那块容器自己搞定。
HttpSession 接口其实就是服务器端用来保存用户会话状态的东西。比如你登录以后,后台给你分配个 sessionId
,用 cookie
或者 URL 携带这个 ID 来保持会话,不用每次都重新认证,省事。
会话什么时候是“新”的?挺好判断:用户第一次进页面、Session 没启动,或者人家直接禁了 cookie。嗯,你也可以用 request.getSession(true)
试一下,会自动创建。
Session 是有生命周期的,默认超时是 30 分钟,你可以自己在 web.xml
里改,或者用 session.setMaxInactiveInterval()
手动设一个。记得别设太短,用户一刷新就掉线,多烦。
要注意的点就是,Session 不跨浏览器,你在 Chrome 登录的,换个 Firefox 得重新来一次。还有,移动端用得多的时候,Session 可以考虑跟 Token 搭配用,弹性更大。
如果你对客户端和服务器交互也感兴趣,可以看看这几个相关文章:WebSocket 客户端服务器代码,还有 Android 客户端连接服务器示例,都挺实用的。
如果你正在学 Java Web,这篇关于 HttpSession 的内容还是蛮值得一读的。搞清楚了,后面搞登录、购物车这些功能就顺了。
679KB
文件大小:
评论区