用户注销时session失效,invalidate报错空指针异常

用户注销的时候session问题
一般情况下,是一个跳转,转到登入界面的一个链接,
但是,我们需要在controller中判断session失效

session.removeAttribute()适用于清空指定的属性 

session.invalidate()是清除当前session的所有相关信息


一般情况下代码中的运用

request.getSession().removeAttribute("userSession");

request.getSession().invalidate();


但是有时候会出现问题,因为你没有判断session是否为空

(比如当你注销的时候,然后返回,再次点击注销按钮的时候,进入方法,没有判断session存在的话,直接报错)

HttpServletRequest.getSession(ture) 等同于 HttpServletRequest.getSession()

HttpServletRequest.getSession(false) 等同于 如果当前Session没有就为null;

if(session == null){

return "/index.jsp";

}

session.invalidate();

return "/index.jsp";


你可能感兴趣的:(Servlet)