Java学习笔记-Session和Cookie的区别

 session和cookie的共同点:都是用来保存用户状态信息的机制。

访问过程:客户第一次向服务器发送请求,服务器端会产生一个sessionId,而通过cookie返回给客户端。

区别:1.存储区域不同:session存放于服务端,cookie存放于客户端

           2.保存内容不同:session能够存取任何类型的数据,cookie只能保存ASCII字符串;同时cookie保存内容比session小,session大小没有限制。

           3.有效期不同:cookie有效期比session长,关闭浏览器后session就会失效。如果需要长期保存用户信息则需要将cookie过期时间设大一些,由于session依赖于名为JSESSIONID的Cookie,当cookie失效时,session不能正常作用,session时长设大后容易内存溢出。

          4.服务器压力不同:由于session在服务器端,并发访问用户多时,产生大量session占用内存;而cookie在客户端,不占服务器资源。

          5.浏览器支持不同:cookie需要浏览器客户端支持,如果不支持,只能采用session+url地址重写来实现

ps:单个cookie保存的数据不能超过4K,一般客户端不会超过20个cookie

致谢:https://juejin.im/entry/5766c29d6be3ff006a31b84e

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页