JSP 六、JSP狀態管理

  • http協議無狀態性

  • 保存用戶狀態的兩大機制

  • Cookie簡介

  • Cookie的創建與使用

  • Session與cookie的對比

 

6-1 http協議的無狀態性

無狀態是指,當瀏覽器發送請求給服務器的時候,服務器會響應。但當同一個瀏覽器再次發送請求時,服務器不會知道是剛纔那個瀏覽器。

簡單說,服務器【不會保存用戶狀態】,不會記得客戶端是否訪問過,所以這就是無狀態協議

 

6-2  Cookie概述

保存用戶狀態的兩大機制 :1、Session 2、Cookie

cookie:是web服務器保存在客戶端的一系列文本信息。

典型應用一:判斷註冊用戶是否已經登錄網站。 典型應用二:保存用戶瀏覽記錄。

cookie的作用: 1、對特定對象的追蹤。 2、保存用戶網頁瀏覽記錄與習慣。 3、簡化登錄

安全風險:容易泄露用戶信息

 

6-3  JSP頁面中創建與使用Cookie

1、創建Cookie: Cookie newCookie = new Cookie(String key,String value);

2、寫入Cookie: response.addCookie(newCookie);

3、讀取Cookie: Cookie[] cookie = request.getCookies();

常用方法:

1. setMaxAge( int expiry ) 設置cookie的有效期,以秒爲單位 getMaxAge() 獲取cookie的有效時間,以秒爲單位

2. setValue(String value) 在cookie創建後,對cookie進行賦值 getValue() 獲取cookie的值

3. getName() 獲取cookie的名稱

4.setValue()和getValue()涉及的都是字符串,對應前面提到的 Cookie是web服務器保存在客戶端的文本文件。

 

解決Cookie無法保存中文字符串的問題

1.java.net包下的URLEncoder類來進行編碼 public static encode(String string, String enco);

2.URLDecoder類進行解碼 URLDecoder.decode(String string, String enco);

 

6-5 Session與Cookie的對比

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章