1. 程式人生 > >Java基礎面試題(12)----session和cookie的區別

Java基礎面試題(12)----session和cookie的區別

問題

session和cookie的區別?

解析

聯絡

session和cookie都是會話跟蹤技術。

  • cookie通過再客戶端記錄資訊,確定使用者的身份
  • session通過再服務端記錄使用者確定使用者的身份

但是session的實現依賴於cookie,sessionid(session的唯一標識)需要存放在客戶端

區別

  1. cookie資料存放在客戶端瀏覽器上session資料存放在伺服器上
  2. cookie不是很安全的,因為在瀏覽器快取會由資料的殘留。考慮到安全應該使用session
  3. session會在一定時間內儲存在伺服器上,當訪問增多,會比較佔用伺服器的資源,考慮到減輕伺服器壓力的方面,應使用cookie儲存
  4. 單個cookie儲存的資料不能超過4k,很多瀏覽器限制一個站點最多儲存20個cookie資訊

應用:在電商專案中,當我們在沒有登陸的情況下,一般購物車的資訊會在cookie中做一個快取,當用戶購買的時候,提醒使用者登陸,講購物車的資訊轉移到伺服器端的資料庫,做儲存。