访问方式:浏览器->服务器
1.如果servlet中没有调用request.getSession()方法,那么服务器永远都不会创建JSESSIONID。
2.如果servlet中调用request.getSession()方法那么情况分为以下两种情况:
2.1 如果是第一次访问servlet,那么request.getSession()会创建一个JSESSIONID,并且在响应头里面有设置:
Set-Cookie:JSESSIONID=********************************; Path=/虚拟项目名; HttpOnly
2.2 如果不是第一访问servlet,那么此次浏览器访问该项目的时候,请求头会带有:
Cookie:JSESSIONID=*********************************
request.getSession()会先去获取请求头的JSESSIONID,并且在服务器里面查找该ID,如果该session对象还存活(tomcat默认session的存活时间为30分钟,过了30分钟后,该session对象会被摧毁)则直接获取该session,如果该session已经被摧毁了,则重新又创建一个session对象,重复步骤2.1.
注意:jsp默认调用getSession()方法。