會話技術 cookie session

2021-08-31 23:53:31 字數 2270 閱讀 8463

一、會話技術

會話技術就是記錄這次會話中客戶端的狀態和資料的。

2、會話技術分為cookie和session:

cookie :將資料儲存在客戶端本地,減少伺服器端的儲存壓力,但是安全性不好,客戶端可以清除cookie           

session:將資料儲存到伺服器,相對安全,但是會增加伺服器的壓力

二、cookie 技術

1. 建立cookie物件

cookie cookie = new cookie("name","666"); //cookie裡面要傳兩個string型別引數,並且不能是中文

2. 設定cookie在客戶端的持久化時間

cookie.setmaxage(66);        //裡面是秒

如果不設定持久化時間,cookie會儲存在瀏覽器的記憶體中,瀏覽器關閉 cookie資訊銷毀,

如果設定持久化時間,cookie資訊會被持久化到瀏覽器的磁碟檔案裡一直到時間過期被銷毀

3.設定cookie攜帶路徑

cookie.setpath(string path); // 引數是路徑

如果不設定攜帶路徑,那麼該cookie資訊會在訪問產生該cookie的web資源所在的路徑都攜帶cookie資訊

cookie.setpath("/test");

代表訪問test應用中的任何資源都攜帶cookie

cookie.setpath("/test/cookie");

代表訪問test專案中的cookie時才攜帶cookie資訊

4. 以檔案頭的形式將cookie中存的資料傳送到客戶端        // set-cookie:"name=666"

response.addcookie(cookie);      

5.刪除客戶端cookie(如果想刪除客戶端的已經儲存的cookie資訊,那麼就使用同名同路徑的持久化時間為0的cookie進行覆蓋)

6.伺服器端怎麼接受客戶端攜帶的cookie

通過request.getcookie(); 獲取所有的cookie,

cookie   cookie = request.getcookie();  //cookie物件陣列

遍歷cookie陣列,通過名稱設定的cookie名稱得到值

for(cookie cookieobj:cookie){

if( "name".equal(cookieobj.getname())){   // 和name進行比較,是否是同乙個cookie

string cookievalue =  cookieobj.getvalue();  //獲取剛剛上面定義的cookie name值

三、session技術

session 技術是將資料儲存在服務端的技術,會為每個客戶端建立乙個記憶體空間用來儲存客戶端資料,客戶端每次都要帶乙個標識id去伺服器找屬於自己的記憶體空間。session需要借助cookie儲存客戶端的唯一標示jsessionid

1.獲得session 物件

httpsession session = request.getsession(); // 此方法會獲得屬於當前會話的session物件,如果說當前session物件不存在,他自己會建立 乙個新的session物件返回。(實質就是根據jsessionid判斷該客戶端是否在伺服器上已經存在    session了)

2.怎樣向session訪問資料

session物件也具有如下三個方法:                     

session.setattribute(string name,object obj);  //向session中存資料

session.getattribute(string name);                  //向session中取資料

session.removeattribute(string name);         //移除資料

3.session物件的生命週期

建立: 第一次執行reques.getsession()時候;

銷毀:a.   伺服器(非正常)關閉時

b.  session過期/失效(預設30分鐘)

(時間的起算點 從何時開始計算30分鐘?) =》從不操作伺服器端的資源開始計時

可以在工程的web.xml中進行配置session過期時間

30c.手動銷毀session():    session.invalidate();

作用範圍:一次會話中所有的資源共用乙個session物件

03012 會話技術Cookie Session

1 會話技術簡介 1 儲存客戶端的技術 的購物系統,使用者將購買的商品資訊儲存到 因為http協議是無狀態的,也就是說每個客戶訪問伺服器端資源時,伺服器並不知道該客戶端是誰,所以需要會話技術識別客戶端的狀態。會話技術是幫助伺服器記住客戶端狀態 區分客戶端 2 會話技術 從開啟乙個瀏覽器訪問某個站點,...

會話及其會話技術(三)

瀏覽器與伺服器建立一次請求與對話的過程。sesssionid 類似於診療卡 session基於cookie來實現的 sessionid產生過程 瀏覽器訪問web伺服器,servlet容器會建立乙個session物件和id屬性 session物件 病歷檔案 id 醫療卡 客戶端後續訪問伺服器,只傳遞標...

會話cookies技術

cookies是一種能夠讓 伺服器把少量資料儲存到客戶端的硬碟或記憶體,或是從客戶端的硬碟讀取資料的一種技術。cookies是當你瀏覽某 時,由web伺服器置於你硬碟上的乙個非常小的文字檔案,它可以記錄你的使用者id 密碼 瀏覽過的網頁 停留的時間等資訊。當你再次來到該 時,通過讀取cookies,...