当前位置: 代码迷 >> Java Web开发 >> struts2 session有关问题
  详细解决方案

struts2 session有关问题

热度:80   发布时间:2016-04-16 22:19:15.0
struts2 session问题
登录的时候我用session保存用户信息
退出的时候我session.clear();退出到了登录页面
但当我再次登录的时候要登录两次才能登录成功,第一次登录不了,除非关闭浏览器。
还有当有多个用户的时候session的key怎么保存,如果保存一个死值会覆盖,如果保存一个灵活值,我取用户的时候该怎么取。
当我退出登录后点浏览器的后退还能退到主页面。
求指点。
------解决方案--------------------
第一个问题   把你的代码  粘出来看看 ,  至于第二个问题: 多个用户保存在session 里面是,存到session 时是怎么放进去的?key   value  ,    当点击 推出当前用户是, 你清楚session  指定的 key
------解决方案--------------------
引用:
Quote: 引用:

第一个问题   把你的代码  粘出来看看 ,  至于第二个问题: 多个用户保存在session 里面是,存到session 时是怎么放进去的?key   value  ,    当点击 推出当前用户是, 你清楚session  指定的 key

代码贴出来了
关于第二个问题我的意思说假如key我放user那个第二个用户进来就会覆盖前面的值,但假如我放一个user+Random(),那么我取的时候我不知到Random()我怎么取值


你用的应该是struts2吧,struts2是没有线程安全问题的,每来一个用户都会产生一个实例,所以你说的情况不会发生。
------解决方案--------------------
其实你可以这样做的,在对应的执行java文件里,写上Map<String, Object> session = ActionContext.getContext().getSession();
session.put("adminName", AAA);其中AAA是你要存入的某个实体类或者字符串,然后取出的时候就session.getAttribute("adminName"),如果是在JSP页面,可以直接用${sessionScope.adminName },至于清空就直接session.remove("adminName");他就会只清除adminName这个session保存
------解决方案--------------------
session不是这么去除的吧,,session invalid()这个呢 ?

------解决方案--------------------
jsp 加入一个common.jsp 
common.jsp 加入禁用缓存的代码。
  相关解决方案