SESSION創建機制 活化鈍化 生命週期 序列化後產生的臨時文件等問題

SESSION活化與鈍化

一.SESSION的創建機制

當客戶端第一次訪問JSP或者servlet頁面時會自動創建session,如訪問的是html等靜態資源是不會創建的,可通過request.getSession(true)強制創建session,如果session存在此方法則返回session,如果不存在session,該方法則創建一個新的session並返回

二.SESSION的生命週期

2.1)session銷燬的兩種機制

1.當成功調用session.invalidate()方法
2.SESSION距離上一次調用已經超時,SESSION的時間默認生命週期是30分鐘,可在WEB.XML中進行配置

     <session-config>
         <session-timeout>30</session-timeout>
     </session-config>
 

注:當你項目的web.xml中沒有設置session的生命週期時間,會自動繼承整個tomcat服務器中的web.xml中關於session有效期的配置,單位爲分鐘

三.SESSION的鈍化與活化在這裏插入圖片描述

注:如果SESSION中存儲了對象,該對象需要實現序列化接口

public class User implements Serializable

序列化的儲存路徑(SESSIONS.ser即爲session序列化後存儲在磁盤中的臨時文件):

"tomcat安裝目錄"\work\Catalina\localhost\"項目名"(和org文件夾同目錄)

在這裏插入圖片描述

四.找不到序列化文件的原因

1.在手動停止服務器的時候要在Servers中停止,在控制檯Console中停止是不會立即生效停止操作的
2.對象沒有實現序列化接口 Serializable
3.SESSION已經超過web.xml中配置的過期時間,SESSION已被銷燬

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章