lotus

贵有恒何必三更眠五更起 最无益只怕一日曝十日寒

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  1846 随笔 :: 0 文章 :: 109 评论 :: 288万 阅读
手工杀会话。
会话失效有2种可能:超时和手工杀会话。手工杀方便省时间,程序员都爱用。

比如我做一个程序需要登录,中间访问的页面有会话控制,如果没有登录则跳转到登录页面,退出时清会话信息。

这是有两个选择:把session数据清空,或直接杀会话。建议直接杀会话,方便。
如果退出时不清会话,对方点浏览器后退,依然无需登录可以正常访问站点。
 
追问
就是说这个东西的最大用处是作退出功能时直接用session.invalidate()将session清空就行了以免有遗漏,如果想手动清空某项session,也可以赋null,是这样吗?
追答
session.invalidate()是杀掉会话

赋值null,是清空会话,很可能是一个陷阱。
2者是不同的概念。session是一个容器,里面可以存数据。以在食堂吃饭为例:session是碗,赋值null想当于空碗,数据相当于碗里的饭,invalidate相当于把碗摔了()。

赋值null是个陷阱,开发不要用。

 

posted on   白露~  阅读(6819)  评论(0编辑  收藏  举报
编辑推荐:
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示