1、會話管理的三種解決方案
(1)使用隱藏域
在jsp中將input標籤的type屬性值設定為hidden,即生成乙個隱藏表單域。再將會話的唯一標識記錄到隱藏域中的value屬性中,並設定name屬性值。當表單提交時,會話標識也被提交到服務端,服務端根據它找到對應的會話物件。使用隱藏域時,需要在每個頁面中都包含會話標識表單,這樣才能在許多頁面跳轉之間儲存會話,並對他進行管理。
(2)使用cookie
原理是在服務端儲存的會話物件中設定會話的唯一標識,客戶端將會話標識儲存在cookie中,當瀏覽器發起請求時,從cookie中取得會話標識並傳送給伺服器,伺服器在收到請求後,根據傳送過來的會話標識查詢到對應的會話物件,這樣服務端就清楚當前是哪個客戶端在連線,並且可以從會話中獲得資訊。
(3)使用url重寫
在url位址的末尾新增會話標識,改寫了原來的url位址。用於客戶端不支援cookie的情況下。重寫方法如下:
response.encodeurl("login.jsp");
或者:response.sendredirect(response.encoderedirecturl("login.jsp"));
如果客戶端支援cookie,則生成的url不變;如果不支援,生成的url中會帶有jsessionid字串的位址。
2、會話管理的主要任務
生成唯一的會話標識、儲存會話物件、從web容器中取得當前請求的會話、**空閒會話。
3、獲取使用者的session物件
httpsession session = request.getsession(); //獲取session物件
session.setattribute("username","shana"); //設定session中的屬性
4、在web專案中禁用cookie
(1)對單個專案禁止
<?xml version="1.0" encoding="utf-8"?>
(2)禁止部署在tomcat伺服器裡的所有web專案
<?xml version="1.0" encoding="utf-8"?>
......
5、httpsession的有效期設定方法
(1)呼叫session的setmaxinactiveinterval(long interval)進行設定
(2)在web.xml中修改,例如:
30
JavaWeb學習筆記 java基礎 7 反射
載入類,解析類組成 用來做框架 反射載入類person 3種方法 1class clazz class.forname com.sws.peerson 2class clazz1 new person getclass 3 class clazz3 person.class 反射類的建構函式並建立物...
java web初學筆記之
pagecontext作用域 當前頁面,也就是只要跳轉到別的頁面就失效了。如果把變數放到pagecontext裡,就說明它的作用域是page,它的有效範圍只在當前jsp頁面裡。其生命週期即把該變數放到pagecontext開始到jsp頁面結束。如果num變數是pagecontext作用域的,則當訪問...
JavaWeb自學之html學習筆記 Day 2
5 影象標籤 src 的路徑 width 的寬度 height 的高度 alt 上顯示的文字 相容性差,有些瀏覽器不顯示此屬性,不重要 6 路徑的介紹 分類 兩類 絕對路徑 c users administrator desktop html學習筆記 相對路徑 乙個檔案相對於另外乙個檔案的位置 三種...