session对象是用来在每一个用户之间分别保存每一个用户信息的对象,以便跟踪用户的操作状态。session的信息保存在服务器端,session的id保存在客户端的cookie中。
例如我们乘坐火车就可以看做是一个session。当我们乘坐火车的时候,我们需要持有一张车票。车票就相当于是一个cookie。而车票上的座位号就相当于是sessionId。当我们需要访问列车的时候,检票员会事先检查我们是否持有cookie,如果有就根据cookie里的内容(sessionId) 来判断使用者。如果没有会再一次创建。
session原理:张三和李四分别请求访问页面,Tomcat服务器根据需求划分出一块内存来设置session,将此次会话信息保留在服务器端上,同时为这两个session分配sessionID,并传到客户端浏览器,交由由cookie来进行管理。当访问完之后,下次张三需要继续访问,就会将cookie的sessionID传到服务器上,进行寻找空间。如果有则继续执行,如果没有则重新创建一个session。
session超时:所谓超时是指 session多久未被访问,就自动销毁掉。在Tomcat中默认是30分钟。如果30分钟,session未被访问,这个session就被释放掉。
URL-rewriting:是说如果客户端浏览器禁用或是不支持cookie,将进行URL地址重写。即将该用户aession的id信息重写到URL地址中。服务器能够解析重写后的URL获取session的id。这样即使客户端不支持cookie,也可以使用session来记录用户状态。
来源:CSDN
作者:weixin_45699455
链接:https://blog.csdn.net/weixin_45699455/article/details/102680463