JavaWeb-Cookie和session

Cookie

1.定义

  为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),即由用户(客户端)保存的数据,类型为小型文本文件。只能保存key、value均为字符串的数据。可短期或长期保存,保存时间可以设置。

2.相关数据

  •   一个cookie对象只能保存一个信息。
  • 一个网站可以给一个客户端同时发送多个cookie对象,但最多存放20个。
  • cookie的大小限制为4kb
  • 浏览器(客户端)最多可以保存300个cookie

3.删除cookie

  • 设置cookie时不设置有效期,则关闭浏览器自动失效
  • 设置有效期即maxAge为0 

 

Session

1.定义

Session是指一个终端用户(client)与交互系统(server)进行通信的时间间隔,通常指从注册进入系统到注销退出系统之间所经过的时间。是为了满足实时远程监测系统的需求,服务器需要实时监测客户端的连接状态。当用户请求来自应用程序的 Web页时,如果该用户还没有会话,则Web服务器将自动创建一个 Session对象。当会话过期或被放弃后,服务器将终止该会话。

2.相关方法

session对象从HttpServletRequest对象中获取。

invalidate():调用该方法则session失效

isNew():当 服务器创建了session,但是客户端还没加入进来时返回true。比如在禁止cookie的浏览器上,该方法返回始终为true。

setAttribute(String name, Object value): 往session中添加属性,可以加入Object对象,因此session可保存信息比cookie多。

 

比较:

1. session由服务器为每个用户创建且唯一,保存在服务器端,会传递JsessionID给客户端并保存在cookie中。Cookie则保存在客户端。

2.session可保存信息比cookie多。

 

posted on 2021-05-28 17:20  曾经啊  阅读(73)  评论(0编辑  收藏  举报