指事务处理没有记忆能力,服务器不知道客户端是什么状态。
即我们给服务器发送HTTP请求,服务器根据请求,发送回数据,但是没有任何记录。
Session是在无状态的HTTP协议下,服务端记录用户状态时用于标识具体用户的机制。它是在服务端保存的用来跟踪用户的状态的数据结构,可以保存在文件、数据库或者集群中。在浏览器关闭后这次的Session就消失了,下次打开就不再拥有这个Session。其实并不是Session消失了,而是Session ID变了,服务器端可能还是存着你上次的Session ID及其Session 信息,只是他们是无主状态,也许一段时间后会被删除。
服务端会话
session会话,解决无状态这一设计。
一次会话,包含多个请求和响应。
一次会话,浏览器给服务器发送一次请求,建立会话,直到一方断开
用于存储一次会话的多次请求,存在服务器端
可以存储任意类型,任意大小的数据
Cookie 是客户端保存用户信息的一种机制,用来记录用户的一些信息。如何识别特定的客户呢?Cookie 就可以做到。每次 HTTP 请求时,客户端都会发送相应的 Cookie 信息到服务端。它的过期时间可以任意设置,如果你不主动清除它,在很长一段时间里面都可以保留着,即便这之间你把电脑关机了。
客户端会话
- protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
- Cookie[] cookies = req.getCookies();
- for (Cookie eve:cookies){
- System.out.println(eve.getName() + "=" + eve.getValue());
- }
- Cookie cookie = new Cookie("coo","wzx");
- resp.addCookie(cookie);
-
- }
默认不能共享
如果要共享,调用setPath方法 里面的path参数设置成 / 即可
cookie用来存储数据在客户端浏览器上
对于单个cookie限制4kb大小,同一域名下限制20个cookie
作用:
用来存储少量不敏感的数据
在不登陆的情况下,完成服务器对客户端的身份识别
在我的gitee上 https://gitee.com/wu-zhengxu/wzx/tree/11-14-VerifyLogin/