cookie与session区别?

参考 cookie与session的区别是什么

  Java中Cookie的使用(Cookie 和Session的区别)

什么是会话?

  用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话。每个用户在使用浏览器与服务器进行会话的过程中,不可避免各自会产生一些数据,程序要想办法为每个用户保存这些数据。

cookie与session区别?

  cookie以文本格式存储在浏览器上,存储量有限;而会话存储在服务端,可以无限量存储多个变量并且比cookie更安全。

  • cookie存储在浏览器上(客户端),session存储在服务器端。
  • cookie只能存储String类型的对象;session能够存储任意类型的对象。
  • cookie可以通过setMaxAge设置有效时间,即使浏览器关闭了仍然存在;但关闭网页session就结束了。
  • Session过多的时候会消耗服务器资源,所以大型网站会有专门的Session服务器;而Cookie存在客户端所以没什么问题。
  • cookie的存储限制了数据量,只允许4KB;而session是无限量的,它和服务器的内存大小有关。

session的生命周期?

  Session存储在服务器端,一般放置在服务器的内存中(为了高速存取),Sessinon在用户访问第一次访问服务器时创建,需要注意只有访问JSP、Servlet等程序时才会创建Session只访问HTML、IMAGE等静态资源并不会创建Session,可调用request.getSession(true)强制生成Session

  Session什么时候失效?

  1. 服务器会把长时间没有活动的Session从服务器内存中清除,此时Session便失效。Tomcat中Session的默认失效时间为20分钟。

  2. 调用Session的invalidate方法。

参考Session的使用与Session的生命周期

原文地址:https://www.cnblogs.com/toria/p/11151481.html