Cookie技术原理
1:登录成功后将用户的信息以cookie的形式保存在自己浏览器中(磁盘中)
2:同一个浏览器发送其他请求,都会携带cookie给服务端,服务端就可以区分用户
cookie的特点
1:cookie是客户端存储技术
2:cookie会自动参与http请求
3:cookie的生命周期,当浏览器关闭cookie会自动删除,可以通过代码设置cookie的有效期
4:cookie的数据是通过域名来隔离的,不同的系统的cookie写不同的域名下。
5:cookie 存储数据的大小是有限制的(4k)
cookie应用场景
记住用户:登录成功后可以将用户的信息存放到cookie中,下次登录时,不需要填写用户名和密码,直接登录
cookie的弊端
用户可以随意篡改cookie
<!----------------------------------------------------------------------------------------------------------------------------->
Session原理
1:当客户端发送第一次请求时,服务端会给该客户端开辟一块独立的内存空间(session)生成sessionid(不能重复)
2:服务端会将sessionid以cookie技术写入到客户端,存储起来
3:客户端后续再发送请求,会自动将sessionid携带传给服务端,服务端就可以操作该客户端对应的会话数据
Session的特点
1:session是服务端存储技术,数据存储在服务端,客户端不能随意篡改
2:session没有大小限制,但是不建议存大量数据,因为会占用内存空间
3:session技术是建立在cookie技术之上
Session的生命周期
创建:第一次访问Servlet(jsp)的时候会开启一个新会话
销毁:
1:关闭浏览器,只是删除cookie,但是session还在
2:不关闭浏览器,默认30min分钟(发呆时间)失效,可以设置失效(发呆)时间
3:程序主动销毁