request.getSession(false)与request.getSession()

参考:http://blog.****.net/xxd851116/archive/2009/06/25/4296866.aspx

先看一下API:

request.getSession(false)与request.getSession()

解释:getSession(boolean create)意思是返回当前reqeust中的HttpSession ,如果当前reqeust中的HttpSession 为null,当create为true,就创建一个新的Session,否则返回null;

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

-->使用场景:session一定存在,或者session不存在时创建session

HttpServletRequest.getSession(false) 等同于 如果当前Session没有 就为null,推荐使用

-->此场景中可能出现session不存在的情况,正常判断如下:

HttpSession session = request.getSession(false);
if (session != null) {
    String user_name = session.getAttribute("user_name");
}