Session.invalidate();是不是将关于某个用户所有的Session都注销,

zhushoujun 2010-06-17 04:00:35
比如设置了关于一个用户的两个session:Session.setAttribute("name",name);又有Session.setAttribute("kkk",obj);调

用一次Session.invalidate()是不是把刚才设置的两个属性都注销了?而且注销了再也不能调用Session.setAttribute()方法

了,怎么会这样呢?
...全文
354 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
sky.han 2010-06-17
  • 打赏
  • 举报
回复
sz貌似写的是权限,你最好用标签来写权限,用session写标签很好
ChDw 2010-06-17
  • 打赏
  • 举报
回复
当调用invalidate后,当前session中的所有attribute都会失效,这个session也不应该再调用setAttribute方法了


当IE下一次请求到达服务器的时候,服务器(像Tomcat之类)就会根据需要创建一个新的Session对象

1、jsp中可以直接使用session对象,但是不能在page中声明session="false"这样,这个声明会导致session为null。


2.无论在jsp还是servlet中注销了以后,下一次请求到达的时候都会创建新的会话。
zhushoujun 2010-06-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lrbyantai 的回复:]
invalidate()方法的作用是结束session

自动timeout 和 session.invalidate()都会使session结束。

当你注销了以后,如果还想用,要重新创建一个新的session对象
[/Quote]

1.jsp中不是可以直接使用Session的么。


2.当注销了以后(在jsp中)要像在servlet中那样创建session那样产生新的Session么?那我开始进入jsp的时候都是直接用Session这个属性的呢!,
狂想者 2010-06-17
  • 打赏
  • 举报
回复
学习一下了。。。。。。。。。
蛋黄车 2010-06-17
  • 打赏
  • 举报
回复
invalidate()方法的作用是结束session

自动timeout 和 session.invalidate()都会使session结束。

当你注销了以后,如果还想用,要重新创建一个新的session对象
首先要在你登录的页面的某个地方,写上一个超级链接: 代码如下: 退出 让它链接到exit.jsp页面去,然后新建一个exit.jsp页面在其body中写上如下代码: 代码如下: <% session.invalidate(); %> 首先让其注销session,然后跳转到登录页面,当然,你可以写上你想要跳转的页面! 您可能感兴趣的文章:java(jsp)整合discuz同步登录

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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