1. 程式人生 > >java:Session

java:Session

網絡 丟失 返回 頁面 cond 服務 mov 服務器 ()

1.Session概述:

  Session:在計算機中,尤其是在網絡應用中,稱為“會話控制”。Session 對象存儲特定用戶會話所需的屬性及配置信息。這樣,當用戶在應用程序的 Web 頁之間跳轉時,存儲在 Session 對象中的變量將不會丟失,而是在整個用戶會話中一直存在下去。當用戶請求來自應用程序的 Web 頁時,如果該用戶還沒有會話,則 Web 服務器將自動創建一個 Session 對象。當會話過期或被放棄後,服務器將終止該會話。Session 對象最常見的一個用法就是存儲用戶的首選項。例如,如果用戶指明不喜歡查看圖形,就可以將該信息存儲在 Session 對象中。有關使用 Session 對象的詳細信息,請參閱“ASP 應用程序”部分的“管理會話”。註意 會話狀態僅在支持 cookie 的瀏覽器中保留。

2.

session:
在web中session就代表了一次會話
一次建立連接和一次關閉連接稱之為會話
session會在客戶端第一次向服務器請求的時候,在服務器上被創建,服務器響應客戶端的時候就會傳送給客戶端,此時sessionID保留在客戶端
當客戶端第二次向服務器發送請求的時候會帶上sessionid---->首先要尋找相同sessionid,如果找到就標識來過,如果沒有找到,服務器就會重新創建一個sessionid返回給客戶端
session什麽時候被銷毀:
(session的不活動周期)
不活動周期:當在10秒鐘之內任意一秒刷新了頁面(操作當前session),失效時間會自動重置為10秒


關閉服務器
關閉瀏覽器
配置session自動失效((tomcat服務器)默認失效時間為30m)
*****如果使用的是tomcat服務器,不允許修改tomcat的web.xml中的session失效時間
setMaxInactiveInterval設置失效使用
invalidate()方法,強制失效(堅決不讓用)

session常用的方法:
******setAttribute(key,value);為session對象設置一個值
******getAttribute(key);通過設置的key獲取對應的值

******removeAttribute(key);通過設置的key移除對應的鍵值對
(不常用)getAttributeNames();獲取設置的key的值,返回的是一個枚舉
setMaxInactiveInterval(int seconds);設置session的失效時間,單位是秒
getMaxInactiveInterval();獲取session的失效時間,單位是秒
******isNew();當前session對象是否為新創建的對象,返回boolean類型

java:Session