1.关于Cookie与Session的简介
(1)Cookie:储存在用户本地终端上的数据是在 HTTP 协议下,服务器或脚本可以维护客户工作站上信息的一种方式,是由 Web 服务器保存在用户浏览器(客户端)上的小文本文件,它可以包含有关用户的信息。
无论何时用户链接到服务器,Web 站点都可以访问 Cookie 信息。目前有些 Cookie 是临时的,有些则是持续的。
临时的 Cookie 只在浏览器上保存一段规定的时间,一旦超过规定的时间,该 Cookie 就会被系统清除。
(2)Session:是另一种记录客户状态的机制,不同的是Cookie保存在客户端浏览器中,而Session保存在服务器上。
客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上。这就是Session。
客户端浏览器再次访问时只需要从该Session中查找该客户的状态就可以了。
注意:如果说Cookie机制是通过检查客户身上的“通行证”来确定客户身份的话,那么Session机制就是通过检查服务器上的“客户明细表”来确认客户身份。Session相当于程序在服务器上建立的一份客户档案,客户来访的时候只需要查询客户档案表就可以了。
2.Cookie与Session的区别:
(1)cookie可以存储在浏览器或者本地,session只能存在服务器中。
(2)session比cookie更具有安全性。
(3)session在使用过程中会占用服务器性能,如果过多占用的情况下会增加服务器压力。
(4)单个cookie保存的数据不能超过4k,很多浏览器都限制一个站点最多保存20个cookie。
3.使用Cookie存储方式来实现登录页面中的验证码生成:
(1)代码页面效果图如下:
(2)先生成随机长度为5的字符串,再用Session 将生成的验证码保存到Session中,将生成的字符串转化成图片二进制数组变量接收,返回视图层。