jsp中的 session 和 cookie 区别与联系

什么是cookie?作用是什么?
  cookie是小量信息,由网络服务器发送出来以存储在网络浏览器上,从而下次这位独一无二的访客又回到该网络服务器时,可从该浏览器读回此信息。
  简而言之,由服务端生成再发给客户端,在客户端运行,相当于本地缓存的作用。
结构:name = value
优缺点:可提高访问效率但是不安全

cookie运行顺序
服务端:
     创建增加Cookie:

     Response.addCookie(Cookie cookie)

    页面跳转(转发,重定向)

客服端:
     获取cookie:

 request.getCookies(); 要获得全部cookie,不能单个

作用:它可以弥补HTTP协议无状态的不足。在Session出现之前,基本上所有的网站都采用Cookie来跟踪会话。


什么是session?作用是什么?
session又称作会话控制,session是jsp内置对象,在服务端运行。
Session 对象存储特定用户会话所需的属性及配置信息。


cookie 和session 的区别:

联系:


客户端第一次访问服务端时,(匹配JSESSIONID 和 sessionId,若不匹配),服务端会产生一个session对象(用于保存客户信息),且每个session对象都会有有唯一的sessionId(用于区分其他session)
服务端会产生一个cookie(name=JSESSIONID , vaule=服务端sessionId的值)
服务端在响应客户端的同时,将cookie发送给客户端,客户端就有了一个cooki(JSESSIONID),
因此,客户端的cookie就可以和服务端的session一一对应(JSESSIONID——sessionId)。

客户端第二次(或n次)访问服务端时,服务端会先根据客户端的cookie的JSESSIONID去服务端的session中匹配sessionId。若匹配成功(cookie JSESSIONID 和session sessionId),说明不是第一次访问,无需再登录

你可能感兴趣的:(java)