總結:
HttpSession 中可以跟蹤并儲存用戶信息,把值設置到屬性中,有2 個方法:
setAttribute()
getAttrribute()
Session
會話保持的機制,session 是記錄客戶狀態(tài)的機制,不同的是 Cookie 保存在客戶端瀏覽器中,而 session 保存在服務器上。
客戶端存儲法:一個用戶只存儲Session 信息都是放在內(nèi)存的腮猖,使用一些緩存服務比如Memcached之類的來放 Session。自己的數(shù)據(jù)
session一致性問題:
只要用戶不重啟瀏覽器翼悴,每次http短連接請求缚够,理論上服務端都能定位到session幔妨,保持會話。
.狀態(tài)保持
· http協(xié)議是無狀態(tài)的:每次請求都是一次新的請求谍椅,不會記得之前通信的狀態(tài)
· 客戶端與服務器端的一次通信误堡,就是一次會話
· 實現(xiàn)狀態(tài)保持的方式:在客戶端或服務器端存儲與會話有關的數(shù)據(jù)
· 存儲方式包括cookie、session雏吭,會話一般指session對象
· 使用cookie锁施,所有數(shù)據(jù)存儲在客戶端,注意不要存儲敏感信息
· 推薦使用sesison方式杖们,所有數(shù)據(jù)存儲在服務器端悉抵,在客戶端cookie中存儲session_id
· 狀態(tài)保持的目的是在一段時間內(nèi)跟蹤請求者的狀態(tài),可以實現(xiàn)跨頁面訪問當前請求者的數(shù)據(jù)
· 注意:不同的請求者之間不會共享這個數(shù)據(jù)摘完,與請求者一一對應