Java:session中的invalidate()的作用是什么呢?求解

手工杀会话。
会话失效有2种可能:超时和手工杀会话。手工杀方便省时间,程序员都爱用。

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

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

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

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

 

posted on 2019-06-22 19:11  shoshana~ 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/shoshana-kong/p/11070033.html

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值