什麼是Session
Session作用
細節
-
當用戶端關閉後,伺服器不關閉,兩次擷取session是否為同一個?
* 預設情況下。不是。
* 如果需要相同,則可以建立Cookie,鍵為JSESSIONID,設定最大存活時間,讓cookie持久化儲存。
Cookie c = new Cookie(“JSESSIONID”,session.getId());
c.setMaxAge(60*60);
response.addCookie©;
- 用戶端不關閉,伺服器關閉後,兩次擷取的session是同一個嗎?
- 不是同一個,但是要確定資料不丢失。tomcat自動完成以下工作
- session的鈍化:
- 在伺服器正常關閉之前,将session對象系列化到硬碟上
- session的活化:
- 在伺服器啟動後,将session檔案轉化為記憶體中的session對象即可。
- session什麼時候被銷毀?
- 伺服器關閉
- session對象調用invalidate() 。
-
session預設失效時間 30分鐘
選擇性配置修改
<session-config>
<session-timeout>30</session-timeout>
</session-config>
session的特點
- session用于存儲一次會話的多次請求的資料,存在伺服器端
- session可以存儲任意類型,任意大小的資料
session與Cookie的差別
- session存儲資料在伺服器端,Cookie在用戶端
- session沒有資料大小限制,Cookie有
- session資料安全,Cookie相對于不安全