2020-10-28 學習小結(七)

Aita_ZteP發表於2020-10-28

內建物件session與httpSession物件是同一個東西麼

Session

session 是jsp的內建物件,在請求到達伺服器時建立,是javax.servlet.http.HttpSession 類的物件,在jsp中session被稱為會話。
會話:在開啟瀏覽器開始時建立,在瀏覽器關閉時進行銷燬,一個會話中包含多次請求與響應,web容器為每一個session在伺服器記憶體中分配了獨立的記憶體空間,用於session儲存資料,session的核心是儲存資料
session是私有的,當會話建立時,伺服器將會形成SessionID,然後將生成的SessionID在伺服器當前的會話的session儲存空間中儲存一份,再講SessionID以Cookie的形式響應到客戶端瀏覽器中一份。
session的常用方法:
1、getID() 返回值為String 用於獲取當前session的SessionID
2、setAttribute(String , Object)返回值是void 用於向Session空間中儲存物件(以鍵值對的形式儲存)
3、getAttribute(String key)返回值是Object 根據鍵獲取物件;
4、invalidate() 返回值是void 強制Session過期
5、removeAttribute(String) 返回值是void 用於從當前Session中空間中刪除key對應的物件
6、getCreationTime()返回值是long,獲取當前Session的建立時間
7、getLastAccessedTime()獲得客戶端最後一次請求伺服器的時間
8、setMaxlnactivelnterval(int) 返回值是void 是指設定最大請求間隔時間,單位是秒
9、getMaxlnactivelnterval() 返回值是int型別,獲得Session的最大請求間隔時間,單位為秒(只在當前頁面中起作用)
10、isNew() 返回值是boolean型別,用於判斷一個Session是不是一個新的Session

HttpSession

HttpSession 是伺服器端的技術,伺服器會為每一個使用者建立一個獨立的Session。 屬於回話的之一。
當使用者第一次訪問Servlet時,伺服器端會給使用者建立一個獨立的Session 並且生成一個SessionID,這個SessionID在響應瀏覽器的時候會被裝進cookie中,從而被儲存到瀏覽器中。
當使用者再一次訪問Servlet時,請求中會攜帶著cookie中的SessionID去訪問,
伺服器會根據這個SessionID去檢視是否有對應的Session物件。有就拿出來使用;沒有就建立一個Session(相當於使用者第一次訪問)。

相關文章