標籤:image 變數 分享 顯示 社會 問題 重啟 nbsp 統計
一、session與application
1、session的關係圖
顯示session的ID
代碼如下:
1、先建立一個t1.jsp頁面,建立一個session,設定鍵和值
2、然後另外建立一個t2.jsp頁面,擷取t1.jsp中session的值
還可以重新賦值給session
總結:
用戶端的session 其實是標記了你的請求來自哪個瀏覽器
問題1:永遠都一樣嗎?
答:重啟了瀏覽器,你的session id就改變了,
結果會導致,再無法取回原來在服務端儲存的資料。
問題2:假設用戶端的session id不變(瀏覽器不重啟),
那麼伺服器會一直儲存這個session的資料嗎?
答:服務端(tomcat)如果20分鐘,沒有人動,
那麼這個session就自動銷毀。
Session的應用情境:一般而言,就是用於記錄你的登入資訊
2、application
application的關係圖
代碼:
與session基本一致
1、先建立一個a1.jsp頁面,在建立一個application,並設定鍵和值
2、然後另外建立一個ta2.jsp頁面,擷取a1.jsp中application的值,
application的總結:
對於application在整個項目中,變數是有且只有1個,所有用戶端都共用同一個application對象。
人類社會,就是要解決資源的分配問題
那些應用情境是資源共用呢?
1、 搶火車票
2、 抽獎
3、 統計點擊次數
Session屬性和application的異同
1、 session和application、request 在配置屬性,代碼一樣的
2、 session對每一個使用者(瀏覽器)是單獨的,而application的所有使用者(瀏覽器)是共用的一個的。從使用角度來講,共用同1個變數會出現資源爭奪的衝突。(絕大部分時候都不用application的)
3、 session伺服器預設只儲存20分鐘(可以修改),而application會一直存在,直到tomcat關閉。
session與application對象