request.getSession(false);
这段代码代表,如果没有和当前request关联的session则不创建session并且返回空
request.getSession(true);
或者
request.getSession();
这两段代码等价,标识如果当前request关联了session则直接返回关联的session,如果没有则创建一个session
简单说一下:
1、当前request如果没有带着sessionid,那么肯定是没有关联session的
2、如果当前request带着sessionid,而服务器上没有匹配该sessionid的session,那么也是没有关联session
有的哥们看完后可能想直接写个jsp测试一下
但是在jsp中无论怎么测session都不会为空。
这是因为jsp的代码里面已经有了getSession():
上面jsp在初始化session的时候已经创建了session,所以到后边不论我怎么获取,这个session都是存在的。
解决办法就是在jsp的头上加上session=false:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" session="false"%>