From 668202050b7d4f17ffe2cefcb1dd2fe9ef7ad00b Mon Sep 17 00:00:00 2001 From: lxw <810412026@qq.com> Date: 星期四, 16 十一月 2023 13:38:27 +0800 Subject: [PATCH] 登录检测 --- src/main/java/com/whyc/service/UserInfService.java | 26 ++++++++++++++++++++++++++ 1 files changed, 26 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/whyc/service/UserInfService.java b/src/main/java/com/whyc/service/UserInfService.java index 0448ef4..5a96d32 100644 --- a/src/main/java/com/whyc/service/UserInfService.java +++ b/src/main/java/com/whyc/service/UserInfService.java @@ -20,6 +20,7 @@ import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -117,6 +118,7 @@ } //鐧诲綍鎴愬姛 ServletContext servletContext = request.getServletContext(); + //鐧诲綍鎴愬姛 servletContext.setAttribute(uname, request.getSession().getId()); //Session瀛樺偍褰撳墠鐢ㄦ埛鍙婃潈闄愮粍鍒楄〃 UserInf userDB = (UserInf) subject.getPrincipal(); @@ -170,4 +172,28 @@ int flag= mapper.update(null,wrapper); return new Response().set(1,flag>0,flag>0?"韬唤鍙樻洿鎴愬姛":"韬唤鍙樻洿澶辫触"); } + //鐧诲綍妫�娴� + public Response checkUserWebSocket(HttpSession httpSession){ + Response model = new Response(); + try { + UserInf user = (UserInf) httpSession.getAttribute("user"); + if(user!=null){ + String sessionId = (String) httpSession.getServletContext().getAttribute(user.getUname()); + if(httpSession.getId().equals(sessionId)){ + model.set(1,user,null); + }else{ + model.set(1,false,"涓嶅悓涓绘満鐧诲綍"); + //鐢ㄦ埛鍦ㄥ叾浠栦富鏈虹櫥褰�,寮鸿揩鐢ㄦ埛鍦ㄦ湰鏈虹殑session澶辨晥 + httpSession.invalidate(); + } + } + else { + model.set(1,false,"鐢ㄦ埛淇℃伅澶辨晥,璇烽噸鏂扮櫥褰�"); + } + + }catch (Exception e){ + model.set(1,false,"鐧诲綍淇℃伅澶辨晥,閲嶆柊鐧诲綍"); + } + return model; + } } -- Gitblit v1.9.1