色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

JSP實(shí)現(xiàn)瀏覽器關(guān)閉cookies情況下的會話管理

通常,會話管理是通過服務(wù)器將 Session ID 作為一個(gè) cookie 存儲在用戶的 Web 瀏覽器中來唯一標(biāo)識每個(gè)用戶會話。如果瀏覽器不支持 cookies,或者將瀏覽器設(shè)置為不接受 cookies,我們可以通過 URL 重寫來實(shí)現(xiàn)會話管理。

  實(shí)質(zhì)上 URL 重寫是通過向 URL 連接添加參數(shù),并把 session ID 作為值包含在連接中。然而,為使這生效,你需要為你的 servlet 響應(yīng)部分的每個(gè)連接添加 session ID 。

   把 session ID 加到一個(gè)連接可以使用一對方法來簡化:response.encodeURL() 使 URL 包含 session ID,如果你需要使用重定向,可以使用 response.encodeRedirectURL () 來對 URL 進(jìn)行編碼。

  encodeURL () 及 encodeRedirectedURL () 方法首先判斷 cookies 是否被瀏覽器支持;如果支持,則參數(shù) URL 被原樣返回,session ID 將通過 cookies 來維持。

  來看下面的例子,兩個(gè) JSP 文件:hello1.jsp 和 hello2.jsp,及它們之間的影響。我們在 hello1.jsp 中簡單的創(chuàng)建一個(gè)會話,并在 session 中存儲一個(gè)對象實(shí)例。接著用戶可以點(diǎn)擊頁面的連接到達(dá) hello2.jsp。在 hello2.jsp 中,我們從 session 中獲取原先放置的對象并顯示它的內(nèi)容。注意,我們在 hello1.jsp 中調(diào)用了 encodeURL() 方法來獲得 hello2.jsp 的鏈接,使得在瀏覽器停用 cookies 的情況下,session ID 自動添加到 URL,hello2.jsp 仍能得到 session 對象。

  首先在啟用 cookies 的情況下運(yùn)行。然后關(guān)閉對 cookie 的支持,重啟瀏覽器,再運(yùn)行一次。每次你都可以看到會話管理在起作用,并能在頁之間傳遞信息。

注意,如果你想讓這個(gè)例子能在關(guān)閉了 cookies 的瀏覽器中工作,你的 JSP 引擎必須支持 URL 重寫。


hello1.jsp


<%@ page session="true" %>
<%
Integer num = new Integer(100);
session.putValue("num",num);
String url =response.encodeURL("hello2.jsp");
%>
<a href='<%=url%>'>hello2.jsp</a>

hello2.jsp


<%@ page session="true" %>
<%
Integer i= (Integer)session.getValue("num");
out.println("Num value in session is "+i.intValue());
%>


axeon于2000-08-03 11:05:38發(fā)送
Copyright © 2000 www.jsper.com All rights reserved.
The catalog script used on this site was written by axeon
站務(wù)聯(lián)系: [axeonOICQ:1684897 ICQ:75795533]

jsp技術(shù)JSP實(shí)現(xiàn)瀏覽器關(guān)閉cookies情況下的會話管理,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 宣化县| 棋牌| 石柱| 佛教| 广灵县| 正蓝旗| 大庆市| 桂林市| 嵊州市| 镇康县| 江山市| 小金县| 泊头市| 卢氏县| 宁德市| 沈丘县| 大埔区| 米林县| 张家口市| 苍梧县| 成武县| 逊克县| 安化县| 青田县| 盖州市| 玉溪市| 盘锦市| 航空| 哈尔滨市| 新平| 许昌市| 威信县| 浦江县| 常德市| 前郭尔| 夹江县| 旬邑县| 勃利县| 南涧| 阿勒泰市| 晋宁县|