日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
SpringMVC實(shí)現(xiàn)賬號(hào)只能在一處登陸-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!

網(wǎng)站建設(shè)、成都網(wǎng)站制作,成都做網(wǎng)站公司-創(chuàng)新互聯(lián)建站已向成百上千家企業(yè)提供了,網(wǎng)站設(shè)計(jì),網(wǎng)站制作,網(wǎng)絡(luò)營(yíng)銷等服務(wù)!設(shè)計(jì)與技術(shù)結(jié)合,多年網(wǎng)站推廣經(jīng)驗(yàn),合理的價(jià)格為您打造企業(yè)品質(zhì)網(wǎng)站。

一、問(wèn)題引導(dǎo)

  在Web開(kāi)發(fā)中,實(shí)現(xiàn)一個(gè)賬號(hào)只能在一處登陸有兩種形式:1.當(dāng)某個(gè)賬號(hào)在某處登陸后,如果再在其他處登陸,將前一個(gè)賬號(hào)擠掉;2.當(dāng)某個(gè)賬號(hào)登陸后,此賬號(hào)在其他設(shè)備登陸提示已經(jīng)登陸,無(wú)法登陸。 正常的應(yīng)用邏輯第一種應(yīng)用較為廣泛,因此此篇文章討論一下第一種邏輯在spring mvc開(kāi)發(fā)中一種較為簡(jiǎn)單的實(shí)現(xiàn)方式。

  然而在沒(méi)有長(zhǎng)連接如WebSocket或者異步請(qǐng)求輪詢的情況下,我們之前登陸的賬號(hào)只能在下一次請(qǐng)求(同步或異步)才能獲取被擠掉的狀態(tài)(如頁(yè)面跳轉(zhuǎn))。 

二、實(shí)現(xiàn)步驟

  1.建立一個(gè)靜態(tài)Map,用來(lái)存放賬號(hào)和sessionID的對(duì)應(yīng)關(guān)系

  2.在登陸時(shí),校驗(yàn)Map中是否已存在此賬號(hào),如果不存在說(shuō)明是第一次登陸,將賬號(hào)和sessionID的對(duì)應(yīng)關(guān)系存放到靜態(tài)Map中;如果Map中存在此賬號(hào),并且sessionID和本次請(qǐng)求的sessionID不一致,將Map中的sessionID替換掉,因此之前登陸的賬戶在發(fā)送下一次非登錄和校驗(yàn)的請(qǐng)求會(huì)被攔截。

  3.創(chuàng)建攔截器,攔截除登陸和校驗(yàn)url以外的所有請(qǐng)求。判斷請(qǐng)求的sessionID和靜態(tài)Map中此賬戶對(duì)應(yīng)的sessionID是否一致。如果不一致,跳轉(zhuǎn)到登陸頁(yè)面。

三、實(shí)現(xiàn)代碼

1.創(chuàng)建一個(gè)內(nèi)存數(shù)據(jù)類,用于存放靜態(tài)的數(shù)據(jù),并初始化:

  public class MemoryData {
    private static Map sessionIDMap = new HashMap();
    public static Map getSessionIDMap() {
      return sessionIDMap;
    }

    public static void setSessionIDMap(Map sessionIDMap) {
      MemoryData.sessionIDMap = sessionIDMap;
    }

  }

文章題目:SpringMVC實(shí)現(xiàn)賬號(hào)只能在一處登陸-創(chuàng)新互聯(lián)
網(wǎng)站路徑:http://www.dlmjj.cn/article/iseeo.html