第七章 servlet會話程式設計
7.1 會話是什麼
7.3 會話的底層實現方式
第一種:cookie
會話功能借助cookie實現。具體來說,就是當使用者第一次訪問web應用的時候,web伺服器會把乙個名為jsessionid,值為乙個16進製制數字的資訊儲存到cookie中,例如:jessionid=612d980051204fc8ab3,通過這樣的操作,web伺服器就可以標識每乙個訪問的使用者,相當於web伺服器發給了每個訪問使用者乙個獨一無二的使用者卡。
就是把表示每個使用者的jsessionid的值附加到url中,例如:servlet;jsessionid=431d980051204fc8dc3,在web伺服器端根據url中不同的jsessionid值,實現會話功能。
7.4 servlet會話程式設計:
在servlet和jsp中,會話的功能被封裝成httpsession型別的物件,httpsession物件通過request物件的getsession()獲得。
httpsession類中的常用主要方法:
object getattribute(string name):
根據繫結物件的名字,返回對應的繫結物件,如果沒有找到對應的物件,返回null。
void setattribute(string name, object value):
利用當前的會話物件,繫結需要儲存的物件,第乙個引數是繫結的物件名,第二個引數為需要繫結的物件。
void setmaxinactiveinterval(int interval):
設定當前會話物件的最大有效時間,時間的單位為秒。
int getmaxinactiveinterval():
返回最大非活動時間間隔,就是在一次會話中,兩次請求的時間隔超過引數指定的值時,session物件將失效並被自動銷毀,本次會話結束。
long getcreationtime():
獲取當前session物件被建立的時間,返回是代表時間戳的乙個整數。
string getid():
返回當前session物件的jsessionid的數值。
long getlastaccessedtime():
獲取當前session物件最後被訪問的時間,皇家馬德里回代表時間戳的乙個整數。
servletcontext getservletcontext():
返回當前session物件所屬的servletcontext物件。
enumeration getattributenames():
把當前的session物件繫結的所有屬性的名字以enumeration物件返回。
boolean isnew():
判斷當前的session物件是不是新建的session物件。
void removeattribute(string name):
把對應名稱的屬性從session物件中刪除。
void invalidate():
讓當前的session物件失效。
程式設計思想第七章
過載 相同的返回值,相同的函式名稱,不同的引數列表。override註解是jdk1.5之後的產物,可以防止你在不想過載時而意外的進行過載 因為父類沒有這個過載方法,所以不能用這個註解 7.1復用 的三種方式 1,直接new關鍵字建立該類物件,組合 優點 快速方便 缺點 生成和銷毀物件,給效能帶來額外...
第七章程式設計作業
題目內容 完成乙個對候選人得票的統計程式。假設有3個候選人,名字分別為li,zhang和fun。使用結構體儲存每乙個候選人的名字和得票數。記錄每一張選票的得票人名,輸出每個候選人最終的得票數。結構體可以定義成如下的格式 struct person leader 3 輸入格式 第一行有乙個整數n,表示...
python第七章 python教程(第七章)
字典和集合 字典是python中唯一,乙個對映型別 如何建立乙個字典,如下 dict dict 滲透 網路安全 怎麼理解字典呢?現實生活中的字典可以通過首字母進行查詢要查詢的漢子,python也可以這樣理解,通過 前的元素查詢到冒號後的元素。為什麼說字典是唯一乙個對映型別呢?看圖。對映型別區別與序列...