jsp中的 session 和 cookie 區別與聯繫

什麼是cookie?做用是什麼?
&nbsp&nbspcookie是小量信息,由網絡服務器發送出來以存儲在網絡瀏覽器上,從而下次這位獨一無二的訪客又回到該網絡服務器時,可從該瀏覽器讀回此信息。
&nbsp&nbsp簡而言之,由服務端生成再發給客戶端,在客戶端運行,至關於本地緩存的做用。
結構:name = value
優缺點:可提升訪問效率可是不安全瀏覽器

cookie運行順序
服務端:
&nbsp&nbsp&nbsp&nbsp 建立增長Cookie:緩存

Response.addCookie(Cookie cookie)

&nbsp&nbsp&nbsp&nbsp頁面跳轉(轉發,重定向)安全

客服端:
&nbsp&nbsp&nbsp&nbsp 獲取cookie:服務器

request.getCookies(); 要得到所有cookie,不能單個

做用:它能夠彌補HTTP協議無狀態的不足。在Session出現以前,基本上全部的網站都採用Cookie來跟蹤會話。cookie


什麼是session?做用是什麼?
session又稱做會話控制,session是jsp內置對象,在服務端運行。
Session 對象存儲特定用戶會話所需的屬性及配置信息。網絡


cookie 和session 的區別:

clipboard.png

聯繫:

圖片描述
客戶端第一次訪問服務端時,(匹配JSESSIONID 和 sessionId,若不匹配),服務端會產生一個session對象(用於保存客戶信息),且每一個session對象都會有有惟一的sessionId(用於區分其餘session)
服務端會產生一個cookie(name=JSESSIONID , vaule=服務端sessionId的值)
服務端在響應客戶端的同時,將cookie發送給客戶端,客戶端就有了一個cooki(JSESSIONID),
所以,客戶端的cookie就能夠和服務端的session一一對應(JSESSIONID——sessionId)。session

客戶端第二次(或n次)訪問服務端時,服務端會先根據客戶端的cookie的JSESSIONID去服務端的session中匹配sessionId。若匹配成功(cookie JSESSIONID 和session sessionId),說明不是第一次訪問,無需再登陸jsp

相關文章
相關標籤/搜索