Java,我做一个web项目的注销,怎么清除session里的值,
登录用的是request.getSession().setAttribute("uiUsers",uiUsers);现在要做一个注销功能,我设置request.getSe...
登录用的是request.getSession().setAttribute("uiUsers",uiUsers); 现在要做一个注销功能,我设置request.getSession().setAttribute("uiUsers",null); 但是刷新页面后session中还是存在值,我要怎么清?谢谢
展开
6个回答
展开全部
java web 项目清楚session的方法是:继承SessionAware类来取得session,然后用invalidate()方法清理
public class ExitAction extends ActionSupport implements SessionAware{
@Override
public String execute() throws Exception {
HttpServletRequest request = ServletActionContext.getRequest();
HttpSession session1 = request.getSession();
session1.invalidate();
return super.execute();
}
public void setSession(Map arg0) {
}
}
//第二种方法(用ActionContext取session,然后用clear()方法清理)
public class ExitAction extends ActionSupport{
@Override
public String execute() throws Exception {
ActionContext ac = ActionContext.getContext();
Map session = ac.getSession();
session.remove("buser");
session.remove("guser");
session.remove("fuser");
return super.execute();
}
}
展开全部
session.invalidate();
是把session内的所有属性 都清除,
session.removeAttribute("uiUsers");
是清除session中的 "uiUsers" 属性,就是清除一个特定的属性
是把session内的所有属性 都清除,
session.removeAttribute("uiUsers");
是清除session中的 "uiUsers" 属性,就是清除一个特定的属性
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
注销是这样做的:
session.invalidate();
session.invalidate();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
request.getSession().removeAttribute()?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
做完清除操作转发回页面,应该刷新就不存在值了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询