在學習之前我們會疑惑,session是什麼呢?簡單來說就是伺服器給客戶端的乙個編號。當一台www伺服器執行時,可能有若干個使用者瀏覽正在運正在這台伺服器上的**。當每 個使用者首次與這台www伺服器建立連線時,他就與這個伺服器建立了乙個session,同時伺服器會自動為其分配乙個sessionid,用以標識這個用 戶的唯一身份。這個sessionid是由www伺服器隨機產生的乙個由24個字元組成的字串,我們會在下面的實驗中見到它的實際樣子。
這個唯一的sessionid是有很大的實際意義的。當乙個使用者提交了表單時,瀏覽器會將使用者的sessionid自動附加在http頭資訊 中,(這是瀏覽器的自動功能,使用者不會察覺到),當伺服器處理完這個表單後,將結果返回給sessionid所對應的使用者。試想,如果沒有 sessionid,當有兩個使用者同時進行註冊時,伺服器怎樣才能知道到底是哪個使用者提交了哪個表單呢。當然,sessionid還有很多其他的作用,我們會在後面提及到。
(1)session中的資料儲存在伺服器端;
(2)session中可以儲存任意型別的資料;
(2)session預設的生命週期是20分鐘,可以手動設定更長或更短的時間。
需要注意的是在session變數儲存過多的資料會消耗比較多的伺服器資源,在使用session時應該慎重。
(1)存入字串:
session["username
"] = "
aaa";
(2)取值:
string str = session["username
"].tostring();
獲取session時一般這麼寫:string username=session[「username」],但是在給物件賦值的時候我們需要注意兩點:
2.1:判斷是否為null
2.2:型別的轉換
如是什麼某記錄的編號:
session["id"] = 1;
這樣取值:
int id1 = convert.toint32(session["username"]);
(3)釋放方式:清除某個session
session["username"] = null;
session.remove("username");
清除全部session
session.abandon();
session.removeall();
web.config 配置節點語法:
"off|inproc|stateserver|sqlserver
"cookieless="
true|false
"timeout="
number of minutes
"stateconnectionstring="
tcpip=server:port
"sqlconnectionstring="
sql connection string
"statenetworktimeout="
number of seconds
"/>
mode:設定將session資訊儲存到**
off:不使用session功能;
inproc :將session儲存在iis程序內,這是預設值,也最常用(優點是簡單,效能最高。但是當重啟iis伺服器時session丟失。);
stateserver :將session儲存在asp.net狀態服務程序中(重新啟動web應用程式時保留會話狀態,並使會話狀態可以用於網路中的多個web伺服器。);
sqlserver :將session儲存在sql server中(儲存在記憶體和磁碟中,伺服器掛掉重啟後都還在)。
cookieless:設定客戶端的session資訊儲存到**
ture 使用cookieless模式;這時客戶端的session資訊就不再使用cookie儲存了,而是將其通過url儲存。
false 使用cookie模式,這是預設值。
timeout 設定經過多少分鐘後伺服器自動放棄session資訊。預設為20分鐘。
stateconnectionstring 設定將session資訊儲存在狀態服務中時使用的伺服器名稱和埠號
例如:"tcpip=127.0.0.1:42424」。當mode的值是stateserver是,這個屬性是必需的。(預設埠42424)。
sqlconnectionstring 設定與sql server連線時的連線字串。
例如"data source=localhost;integrated security=sspi;initial catalog=joye"。當mode的值是sqlserver時,這個屬性是必需的。
statenetworktimeout 設定當使用stateserver模式儲存session狀態時,經過多少秒空閒後,斷開web伺服器與儲存狀態資訊的伺服器的tcp/ip連線的。預設值是10秒鐘。
C 中MessageBox()的詳細用法
1.messagebox 這是乙個最簡單的訊息框!2.messagebox 這是乙個有標題的訊息框!標題 3.messagebox 這是乙個確定 取消的訊息框!標題 mb okcancel 4.messagebox 這是乙個警告的訊息框!標題 mb iconexclamation 5.message...
jsp中session的用法
jsp 中session的理解 一 session簡單介紹 在web開發中,伺服器可以為每個使用者瀏覽器建立乙個會話物件 session物件 注意 乙個瀏覽器獨佔乙個session物件 預設情況下 因此,在需要儲存使用者資料時,伺服器程式可以把使用者資料寫到使用者瀏覽器獨佔的session中,當使用...
jsp中session 的用法
在第乙個頁面把要儲存的字串用setattribute方法儲存在username中 session.setattribute username 要儲存的字串 在另乙個頁面中通過getattribute方法取得username的值 string xxoo string session.getattrib...