1.为什么需要session:http协议本身是无状态的,服务器无法记住同一个客户端发起的两次请求,认为每一个请求都是一个新的客户请求,所以需要有一个机制能够记住用户。
2.SESSION是用户级的对象,不同用户之间不能共享session,A用户不能访问B用户定义的session对象。
3.服务器时根据sesisonId来区分不同用户的,也是根据sessionid来存储不用用户定义的session对象的
4.SESSION机制也是依赖于cookie,服务器将为用户生成的sessionid伴随源码发送到客户端,存储在客户端的浏览器中,客户再次请求时,会将sessionid发送到服务器,服务器进行比对之后就知道是不是原来用户了
5.session的默认模式为inProc,此种模式下,IIS服务器重启,则所有session全部丢失。
6.为什么要设置session过期时间
1)节省服务器资源:用户可能已经关闭了浏览器,而没有通过“注销”按钮,这就导致服务器不知道用户已经不再使用系统了,这时候如果此用户的相关session仍然存在,就没有必要了。所以需要设置过期时间
2)安全:用户长时间未操作,可能已经离开电脑做别的去了,这时候如果有别人使用此账号做了一些事情,而原用户根本不知道,则是不安全的。所以需要设置过期时间,我们默认用户如果20分钟不操作,就表明已经不再使用本系统了。