色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術(shù)文章
文章詳情頁

jsp session.setAttribute()和session.getAttribute()用法案例詳解

瀏覽:240日期:2022-06-08 08:12:23
目錄
  • Session簡(jiǎn)單介紹
  • Session和Cookie的主要區(qū)別
  • 基本語法
    • 1,對(duì)于值類型的變量,Session中保存的是值類型的拷貝
    • 2,對(duì)于引用類型的變量,Session中保存的是引用
    • 3,Session周期
    • 4,調(diào)用Session
    • 5,Session數(shù)據(jù)有效期
    • 6,Session的保存
  • 在JSP中

    Session簡(jiǎn)單介紹

      在WEB開發(fā)中,服務(wù)器可以為每個(gè)用戶瀏覽器創(chuàng)建一個(gè)會(huì)話對(duì)象(session對(duì)象),注意:一個(gè)瀏覽器獨(dú)占一個(gè)session對(duì)象(默認(rèn)情況下)。因此,在需要保存用戶數(shù)據(jù)時(shí),服務(wù)器程序可以把用戶數(shù)據(jù)寫到用戶瀏覽器獨(dú)占的session中,當(dāng)用戶使用瀏覽器訪問其它程序時(shí),其它程序可以從用戶的session中取出該用戶的數(shù)據(jù),為用戶服務(wù)。

    Session和Cookie的主要區(qū)別

    • Cookie是把用戶的數(shù)據(jù)寫給用戶的瀏覽器。
    • Session技術(shù)把用戶的數(shù)據(jù)寫到用戶獨(dú)占的session中。
    • Session對(duì)象由服務(wù)器創(chuàng)建,開發(fā)人員可以調(diào)用request對(duì)象的getSession方法得到session對(duì)象。

    基本語法

    1,對(duì)于值類型的變量,Session中保存的是值類型的拷貝

    Session["__test0"] = 1;
    
    int i = (int)Session["__test0"]+1;
    
    int j = (int)Session["__test0"];

    結(jié)果:

    i=2,j=1

    2,對(duì)于引用類型的變量,Session中保存的是引用

    CDACommon cda = new CDACommon();
    
    Session["__test"] = cda.GetDataSet("select top 1 * from tb_customer");
    
    DataSet ds = (DataSet)Session["__test"];
    
    DataSet ds2 = (DataSet)Session["__test"];
    
    ds.Tables[0].Rows[0][0]="9999";

    結(jié)果:

    ds.Tables[0].Rows[0][0]=="9999"

    ds2.Tables[0].Rows[0][0]=="9999";

    3,Session周期

    新的瀏覽器窗口啟動(dòng)后,開始一個(gè)新的Session,觸發(fā)Global的Session_Start的調(diào)用,從第一個(gè)瀏覽器窗口打開的瀏覽器窗口不啟動(dòng)新的Session。Session過期后,執(zhí)行頁面的提交也會(huì)觸發(fā)Session_Start,等于是新的一個(gè)Session。

    4,調(diào)用Session

    對(duì)于Web Service,每個(gè)方法的調(diào)用都會(huì)啟動(dòng)一個(gè)Session,可以用下面的方法來使多個(gè)調(diào)用在同一個(gè)Session里  CWSSyscfg cwsCfg = new CWSSyscfg(); cwsCfg.CookieContainer = new System Net.CookieContainer(); CWSSyscfg是一個(gè)Web Service類,Web Service的給代理類設(shè)置CookieContainer屬性,只要多個(gè)代理的CookieContainer屬性是相同的值,則對(duì)這些Web Service的調(diào)用在同一個(gè)Session。可以用單例模式來實(shí)現(xiàn)。

    5,Session數(shù)據(jù)有效期

    只要頁面有提交活動(dòng),則Session的所有項(xiàng)都會(huì)保持,頁面在20分鐘(默認(rèn)配置)內(nèi)沒有任何提交活動(dòng)時(shí)Session會(huì)失效。Session內(nèi)存儲(chǔ)的多個(gè)數(shù)據(jù)項(xiàng)是整體失效的。

    6,Session的保存

    在Session中如果保存的是非序列化的類比如DataView,在用SQLServer保存Session的模式下,無法使用。查看一個(gè)類是否是序列化的方法是,需看是否用[Serializable]來標(biāo)記了該類.

    在JSP中

    Jsp的session是使用bean的一個(gè)生存期限,一般為page,session意思是在這個(gè)用戶沒有離開網(wǎng)站之前一直有效,如果無法判斷用戶何時(shí)離開,一般依據(jù)系統(tǒng)設(shè)定,tomcat中設(shè)定為30分鐘.

    JSP使用一個(gè)叫HttpSession的對(duì)象實(shí)現(xiàn)同樣的功能。HTTPSession 是一個(gè)建立在cookies 和URL-rewriting上的高質(zhì)量的界面。Session的信息保存在服務(wù)器端,Session的id保存在客戶機(jī)的cookie中。事實(shí)上,在許多服務(wù)器上,如果瀏覽器支持的話它們就使用cookies,但是如果不支持或廢除了的話就自動(dòng)轉(zhuǎn)化為URL-rewriting,session自動(dòng)為每個(gè)流程提供了方便地存儲(chǔ)信息的方法。

    Httpsession具有如下API:

    getId 此方法返回唯一的標(biāo)識(shí),這些標(biāo)識(shí)為每個(gè)session而產(chǎn)生。當(dāng)只有一個(gè)單一的值與一個(gè)session聯(lián)合時(shí),或當(dāng)日志信息與先前的sessions有關(guān)時(shí),它被當(dāng)作鍵名用。

    GetCreationTime 返回session被創(chuàng)建的時(shí)間。最小單位為千分之一秒。為得到一個(gè)對(duì)打印輸出很有用的值,可將此值傳給Date constructor 或者GregorianCalendar的方法setTimeInMillis.

    GetLastAccessedTime 返回session最后被客戶發(fā)送的時(shí)間。最小單位為千分之一秒。

    GetMaxInactiveInterval 返回總時(shí)間(秒),負(fù)值表示session永遠(yuǎn)不會(huì)超時(shí)。

    getAttribute 取一個(gè)session相聯(lián)系的信息。(在jsp1.0中為 getValue)

    Integer item = (Integer) session.getAttribute("item") //檢索出session的值并轉(zhuǎn)化為整型

    setAttribute 提供一個(gè)關(guān)鍵詞和一個(gè)值。會(huì)替換掉任何以前的值。(在jsp1.0中為putValue)

    session.setAttribute("ItemValue", itemName); // ItemValue 必須不是must簡(jiǎn)單類型

    在應(yīng)用中使用最多的是getAttribute和setAttribute.現(xiàn)以一個(gè)簡(jiǎn)單的例子來說明session的應(yīng)用,test1.jsp(信息寫入session),test2.jsp(從session讀出信息)。

    test1.jsp

    <HTML>
    
    <HEAD>
    
    <TITLE> Document </TITLE>
    
    </HEAD>
    
    <BODY BGCOLOR="#FFFFFF">
    
    <%
    
    session.setAttribute("str",new String(“this is test”));
    
    %>
    
    </BODY>
    
    </HTML>

    test2.jsp

    <HTML>
    
    <HEAD>
    
    <TITLE> New Document </TITLE>
    
    </HEAD>
    
    <BODY BGCOLOR="#FFFFFF">
    
    <%
    
    String ls_str=null;
    
    ls_str=(String)session.getAttribute("str");
    
    out.println(“從session里取出的值為:”+ls_str);
    
    %>
    
    </BODY>
    
    </HTML>

    到此這篇關(guān)于jsp session.setAttribute()和session.getAttribute()用法案例詳解的文章就介紹到這了,更多相關(guān)jsp session.setAttribute()和session.getAttribute()用法內(nèi)容請(qǐng)搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

    標(biāo)簽: JSP
    相關(guān)文章:
    主站蜘蛛池模板: 成人a一级毛片免费看 | 精品午夜一区二区三区在线观看 | 日本韩经典三级在线播放 | 国产一区视频在线 | 综合久久99久久99播放 | 国产不卡毛片 | 激情宗合网| 在线日韩中文字幕 | 日本精品久久久久久久 | 91aaa免费免费国产在线观看 | 日韩精品一区二区三区视频 | 女初高中福利视频在线观看 | 91精品国产综合久久欧美 | 国产成人久久久精品一区二区三区 | 国产真实自拍 | 精品欧美成人高清视频在线观看 | 日本a级毛片视频播放 | 欧美69视频 | 国产99精品一区二区三区免费 | 偷窥女厕国产在线视频 | 久久久久久久久综合 | 美女被爆免费视频软件 | 超级香蕉97视频在线观看一区 | avav男人天堂 | 久久亚洲国产精品 | 99精品国产免费久久国语 | 日本视频免费在线播放 | 中文字幕日韩欧美一区二区三区 | dy888午夜国产午夜精品 | 99久久国产免费福利 | 72种姿势欧美久久久久大黄蕉 | 精品国产亚洲一区二区三区 | 香蕉成人国产精品免费看网站 | 久久综合婷婷香五月 | 国产精品久久久久久福利 | 黄色美女在线观看 | 一区二区日韩欧美 | 91香蕉国产亚洲一区二区三区 | 欧美a级毛片免费播敢 | 久久精品国产亚洲 | 免费一级欧美大片在线观看 |