建立session
再次請求
域屬性空間範圍的對比
銷毀session和cookie類似,也是一種會話跟蹤技術,cookie是將會話狀態儲存在了瀏覽器端,而session是將會話狀態儲存在了伺服器端。
session會為每個會話維護乙個session,不同的會話對應不同的session。
session在伺服器上是以map的形式儲存的:
keyvalue
隨機字串,稱為sessionid
session對物件的引用
後端將session資訊寫入session列表後,系統還會將sessionid作為name,將sessionid內容的隨機字串作為value以乙個全域性的cookie的形式(就是當前web應用下任一路徑都會帶上這個cookie,因此可以跨請求共享資料)放到響應包頭中,然後將該cookie返回給客戶端並且存在快取中
當再次發出請求時,客戶端會帶上這個cookie
在最後一次訪問後的30分鐘後失效
並不會在你關閉瀏覽器後失效(除非瀏覽器設定關閉後立即清空快取,因為返回的cookie是存在快取中的),因為對使用者來說開啟關閉瀏覽器是一次會話,但是對伺服器來說,seesion失效才算一次會話
單位是秒s
}前端看到的,在響應中,以cookie的形式返回了session
並且路徑設定為當前web應用全域性
當我們再次傳送請求,會把sessionid的cookie傳過去(不同是因為這是分兩次寫的部落格,這是兩個session)
servletcontext:整個應用,可以跨會話
httpsession:會話範圍,可以跨請求共享
httpservletrequest:請求範圍,可以跨servlet
session.
invalidate()
;
在servlet中怎樣獲得session的配置資訊
session.getattribute 名稱 得到session放入進去的資訊。session.getattributenames 得到session裡面所有的資訊名稱。session.getmaxinactiveinterval 得到session最大存活時間。seesion.getid 得到s...
Servlet學習筆記 Session
session是通過setattribute和getattribute來傳遞資訊的。session通過伺服器建立和管理,當這個session30分鐘空閒,伺服器就會把此session摧毀。session.invalidate 方法可以摧毀session。一次會話結束後,原來的預設cookie就被刪除...
Servlet實現session讀寫
乙個女人讓他的程式設計師丈夫去商店買東西 你去附近的商店買些麵包,如果有雞蛋的話,買6個回來,這個丈夫買了6個麵包回來,他的妻子大吃一驚 你為什麼買了6個麵包?程式設計師丈夫回答 因為他們有雞蛋。session 是存放在服務端的,當使用者傳送請求,session 存放機制是下面這樣的 使用者訪問的時...