Session解析:
1.Session概述:
Session就一个接口(HttpSession)
Session就是会话。它是用来维护一个客户端和服务器之间关联的一种技术。
每个客户端都有自己的一个Session会话。
Session会话中,我们经常用来保存用户登录之后的信息。
2.Session的创建和获取:
如何创建和获取Session?它们的API是一样的:request.getSession()。第一次调用是:创建Session会话,之后调用部是:获取前面创建好的Session会话对象
isNew():判断到底是不是刚创建出来的(新的),true表示刚创建;false表示获取之前创建
每个会话都有一个身份证号。也就是ID值。而且这个ID是唯一的。getId()得到Session的会话id值。
3.Session域数据存取:
setAttribute(String name, Object value); //向session中存入数据
getAttribute(String name); //从session域中获取数据
removeAttribute(String name); //从session域中移除数据
2.Cookie概述
Cookie 是一些数据, 存储于你电脑上的文本文件中,用于存储用户的访问记录。
当 web 服务器向浏览器发送 web 页面时,在连接关闭后,服务端不会记录用户的信息。
Cookie 的作用就是用于解决 "如何记录客户端的用户信息":
- 当用户访问 web 页面时,他的名字可以记录在 cookie 中。
- 在用户下一次访问该页面时,可以在 cookie 中读取用户访问记录。
1、存储方式:键值对
例如:
username=John Doe
当浏览器从服务器上请求 web 页面时, 属于该页面的 cookie 会被添加到该请求中。服务端通过这种方式来获取用户的信息。
默认情况下,cookie 在浏览器关闭时删除
2、JavaScript添加Cookie
加入cookie内容
document.cookie="username=John Doe";
加入Cookie过期的时间,一旦过期,下次就需要重新输入表单存储cookie
document.cookie="username=John Doe; expires=Thu, 18 Dec 2043 12:00:00 GMT";
加入使用cookie的页面
document.cookie="username=John Doe; expires=Thu, 18 Dec 2043 12:00:00 GMT; path=/"; # 此时使用的是GMT时间格式,UTC也可以
当需要再cookie中输入多个键值对,使用“;”隔开。
3、读取cookie
document.cookie;
document.cookie 将以字符串的方式返回所有的 cookie,类型格式: cookie1=value; cookie2=value; cookie3=value;
4、修改cookie
document.cookie="username=John Smith; expires=Thu, 18 Dec 2043 12:00:00 GMT; path=/";
直接覆盖旧的值,完成修改。
5、删除cookie
document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 GMT";
expires设置之前的时间,截止的时间过期了,cookie删除。cookie的值没有必要指定