ession是一种保存上下文信息的机制,它是针对每一个用户的,变量的值保存在服务器端,通过SessionID来区分不同的客户,session是以Cookie或URL重写为基础。默认使用Cookie来实现,系统会创造一个名为JSESSIONID的输出Cookie,或称为SessionCookie,以区别PersistentCookies(通常所说的Cookie).SessionCookie是存储在浏览器中,并不是写在硬盘上的,但是把浏览器的Cookie禁止后,使用response对象的encodeURL或encodeRedirectURL方法编码URL,WEB服务器会采URL重写的方式传递Sessionid,用户就可以在地址栏看到jsessionid=A09JHGHKHU68624309UTY84932之类的字符串。
通常SessionCookie是不能跨窗口使用,当用户新开了一个浏览器进入相同的页面时,系统会赋予用户一个新的SessionID,这样信息共享的目的就达不到,此时可以把SessionID保存在PersistentCookie中,然后再新的窗口中读出来,就可以得到上一个窗口的SessionID了,这样通过SessionCookie和PersistentCookie的结合,实现了跨窗口的会话跟踪。
Cookie是一小段文本信息,伴随着用户请求和页面在Web服务器和浏览器之间传递。用户每次访问站点时,Web应用程序都可以读取Cookie包含的信息。Cookie的基本工作原理如果用户再次访问站点上的页面,当该用户输入URLwww.*****.com时,浏览器就会在本地硬盘上查找与该URL相关联的Cookie。如果该Cookie存在,浏览器就将它与页面请求一起发送到您的站点。
根本的用途是:Cookie能够帮助Web站点保存有关访问者的信息。更概括地说,Cookie是一种保持Web应用程序连续性(即执行"状态管理")的方法.使Web站点记住您.
当用户访问您的站点时,服务器会为该用户创建一的会话,会话将一直延续到用户访问结束。