在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象,即session对象,注意:一个浏览器独占一个session对象(默认情况下)。因此,在需要保存用户数据时,服务器程序可以把用户数据写到用户浏览器独占的session中,当用户使用浏览器访问其它程序时,其它程序可以从用户的session中取出该用户的数据,为用户服务。
服务器创建session出来后,会把session的ID号,以cookie的形式回写给客户机,这样,只要客户机的浏览器不关,再去访问服务器时,都会带着session的ID号去,服务器发现客户机浏览器带session id过来了,就会使用内存中与之对应的session为之服务。
cookie是Web服务器发送给浏览器的一块信息。浏览器会在本地文件中给每一个Web服务器存储cookie。以后浏览器在给特定的Web服务器发请求的时候,同时会发送所有为该服务器存储的cookie。
session是指用来在客户端与服务器端之间保持状态的解决方案以及存储架构。
无论客户端浏览器做怎么样的设置,session都应该能正常工作。客户端可以选择禁用cookie,但是session仍然是能够工作的,因为客户端无法禁用服务端的session。
在存储的数据量方面session和cookies也是不一样的。session能够存储任意的Java对象,cookie只能存储String类型的对象。
cookie是客户端的,session是服务端的。cookie存储于客户端,记录web服务器的信息,每次上网时都会先查看对应的cookie信息,比如购物时,使用cookie记录购物车信息。session是记录客户机的信息,SessionID是session的唯一标识,使用session可以记录客户端的请求等。
无论客户端浏览器做怎么样的设置,session都应该能正常工作。客户端可以选择禁用cookie,但是,session仍然是能够工作的,因为客户端无法禁用服务端的session。
在存储的数据量方面session和cookies也是不一样的。session能够存储任意的JAVA对象,cookie只能存储String类型的对象。
原文地址:https://www.cnblogs.com/ltc19961206/p/8638872.html