一般來講,當我們要存進的是用戶級別的數據就用Session,那什麼是用戶級別呢?只要瀏覽器不關閉,希望數據還在,就使用Session來保存。
Session在用戶第一次訪問服務器Servlet,jsp等動態資源就會被自動創建,Session對象保存在內存裏,這也就爲什麼上面的例子可以直接使用request對象獲取得到Session對象。如果訪問HTML,IMAGE等靜態資源Session不會被創建。
Session生成後,只要用戶繼續訪問,服務器就會更新Session的最後訪問時間,無論是否對Session進行讀寫,服務器都會認爲Session活躍了一次。
由於會有越來越多的用戶訪問服務器,因此Session也會越來越多。爲了防止內存溢出,服務器會把長時間沒有活躍的Session從內存中刪除,這個時間也就是Session的超時時間。
Session的超時時間默認是30分鐘,有三種方式可以對Session的超時時間進行修改