乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      登陸狀態(tài)持久化

       quasiceo 2014-08-06

      登陸狀態(tài)持久化 - 小小程序控

      2014-08-05 20:14:25http://www.cnblogs.com/think-in-java/p/3890688.html--點(diǎn)擊數(shù):2

      前幾天,一直都想實(shí)現(xiàn)登陸持久化功能,于是到網(wǎng)上各種翻閱資料。最終總結(jié)實(shí)現(xiàn)登陸持久化無非那么幾種方法。

      1.將信息存入session

      2.將信息存入cookie,(可以采用MD5加密)

      3.拉長cookie的有效時(shí)間

      第一種操作最簡單,也很容易實(shí)現(xiàn),但是有個(gè)缺點(diǎn):就是它的持久化只是在一次會(huì)話里面,也就是說當(dāng)你關(guān)掉頁面重新開啟頁面的時(shí)候,發(fā)覺信息已經(jīng)被清除干凈了。這樣做顯然不合適,第二種是用戶名和密碼(經(jīng)過加密后)存入cookie,每次對(duì)cookie的信息進(jìn)行校驗(yàn),實(shí)現(xiàn)持久化。這也不是很好的辦法,畢竟把密碼等重要信息存進(jìn)cookie,也是不安全的。

      我要講的就是第三種方法,也是我覺得可行性最高的方法。

      session(會(huì)話)有一個(gè)sessionid這樣一個(gè)屬性,用來標(biāo)識(shí)每一個(gè)用戶。而sessionid實(shí)際上還是存在cookie里面的。所以只要拉長sesiionid在cookie的存活時(shí)間就可以實(shí)現(xiàn)持久化了。

      在struts2中訪問session或者cookie有兩種方法:

      1.偽訪問:實(shí)現(xiàn)SessionAware接口(獲得session)

      CookiesAware接口(獲得cookie)

      CookieProvider接口(寫入cookie)

      再者你如果要訪問Cookie還得在struts2里面配置攔截器。

      <interceptor-ref name="defaultStack"></interceptor-ref><interceptor-ref name="cookieProvider"></interceptor-ref><interceptor-ref name="cookie"><param name="cookiesName">ValidationMsg</param><param name="cookiesValue">*</param></interceptor-ref>

      但是這種方法是無法獲取sessionid,為什么呢?

      因?yàn)樗莻卧L問,通過這種方法返回的是一個(gè)Map.什么是Map?就是值對(duì),它是用這樣方式去模擬HttpServletSession。

      獲取不到那怎么呢?

      只能以耦合性為代價(jià)了,去使用HttpServletAPI.

      我們只需要這樣寫:

      HttpServletResponse response = ServletActionContext.getResponse();HttpServletRequest request =ServletActionContext.getRequest();HttpSession session =request.getSession();session.setAttribute("userName",user.getUserName());String sessionid = session.getId();Cookie cookie = new Cookie("JSESSIONID",sessionid);//注意key值必須和原來一樣,否則服務(wù)器無法標(biāo)識(shí)用戶cookie.setMaxAge(1*1800); // 設(shè)置cookie的生命周期1800scookie.setPath("/");response.addCookie(cookie);//cookie添加完畢

      這樣就可以利用cookie的持久化,去實(shí)現(xiàn)關(guān)閉頁面下次打開還可以自動(dòng)登陸了。

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多