1.什么是Session
Session是服务器端的缓存技术,它是基于内存的,可以用来保存针对每个用户的相关数据。
换句话说:程序员可以通过session,把以后还会用到的数据放到服务器内存中。
这些数据可以按照不同的用户来分类,用户A和用户B的数据会放在不同的session对象中。
2.Session的生命周期
session由服务器创建,当后端程序调用getSession(true)的时候,session才可能会被创建(当请求中携带有JSessionId时,不会创建)。
当然,如果程序从头到尾都没有调用这句话,那么session就不会被创建。
比如:当用户访问web项目根目录下的一个静态html页面的时候(与web-info同级的页面),服务器是不会为用户创建session的。
这里面有两个问题需要说明一下:
一.getSession()、getSession(true)和getSession(false)的区别
getSession()和getSession(true)是一样的,意思是:若当前会话在服务器中没有对应session的时候,则为当前会话创建一个session,并返回新建的session对象的引用。
getSession(false)则不是这样:若当前会话在服务器中没有对应session,则返回null,并不会创建session对象。
直接上图:
二.当我们访问jsp页面的时候。
3.服务器如何区分不同用户的session
4.Session的操作
时间: 2024-10-09 09:26:26