From 0f4c5190746db28618ab0f35e65be41ef8fc78ed Mon Sep 17 00:00:00 2001
From: whycxzp <perryhsu@163.com>
Date: 星期三, 16 十二月 2020 14:16:17 +0800
Subject: [PATCH] update basic function

---
 src/main/java/com/whyc/service/UserService.java |   48 +++++++++++++++++++++---------------------------
 1 files changed, 21 insertions(+), 27 deletions(-)

diff --git a/src/main/java/com/yckj/service/UserService.java b/src/main/java/com/whyc/service/UserService.java
similarity index 68%
rename from src/main/java/com/yckj/service/UserService.java
rename to src/main/java/com/whyc/service/UserService.java
index 28265cd..6ddabc8 100644
--- a/src/main/java/com/yckj/service/UserService.java
+++ b/src/main/java/com/whyc/service/UserService.java
@@ -1,29 +1,21 @@
-package com.yckj.service;
+package com.whyc.service;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.ArrayUtils;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.sun.deploy.util.ArrayUtil;
-import com.yckj.dto.UserLoginInfo;
-import com.yckj.mapper.UserMapper;
-import com.yckj.pojo.User;
+import com.whyc.dto.UserLoginInfo;
+import com.whyc.mapper.UserMapper;
+import com.whyc.pojo.User;
 import lombok.extern.slf4j.Slf4j;
-import org.assertj.core.util.Arrays;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.ApplicationContext;
 import org.springframework.stereotype.Service;
-import org.springframework.web.context.request.RequestContextHolder;
-import org.springframework.web.context.request.ServletRequestAttributes;
 
 import javax.annotation.Resource;
 import javax.servlet.ServletContext;
-import javax.servlet.ServletRequest;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpSession;
 import java.util.HashMap;
-import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
 
@@ -87,16 +79,16 @@
 
             //servletContext涓瓨鍌ㄧ敤鎴蜂俊鎭�
             ServletContext servletContext = request.getServletContext();
-           List<UserLoginInfo> users = (List<UserLoginInfo>) servletContext.getAttribute("users");
-            if(users==null){
+           Map<String,UserLoginInfo> userMap = (Map<String, UserLoginInfo>) servletContext.getAttribute("users");
+            if(userMap==null){
                 log.info("servletContext棣栨瀛樺��");
-                users = new LinkedList<>();
-                users.add(new UserLoginInfo(username,timestamp));
-                servletContext.setAttribute("users",users);
+                userMap = new HashMap<>();
+                userMap.put(username,new UserLoginInfo(username,timestamp));
+                servletContext.setAttribute("users",userMap);
             }else{
                 log.info("servletContext宸茬粡鏈夊��");
-                users.add(new UserLoginInfo(username,timestamp));
-                servletContext.setAttribute("users",users);
+                userMap.put(username,new UserLoginInfo(username,timestamp));
+                servletContext.setAttribute("users",userMap);
             }
         }
         return flag;
@@ -111,16 +103,18 @@
         User user = (User) session.getAttribute("user");
         Long timestamp = (Long) session.getAttribute("timestamp");
 
-        List<UserLoginInfo> users = (List<UserLoginInfo>) servletContext.getAttribute("users");
+        if(user==null){
+            return false;
+        }
+        Map<String,UserLoginInfo> userMap = (Map<String, UserLoginInfo>) servletContext.getAttribute("users");
 
-        for (UserLoginInfo temp:users){
-            if(temp.getUsername().equals(user.getUsername()) && temp.getTimestamp()==timestamp){
+        UserLoginInfo userLoginInfo = userMap.get(user.getUsername());
+        if(userLoginInfo.getUsername().equals(user.getUsername()) && userLoginInfo.getTimestamp().compareTo(timestamp)==0){
                 //璇存槑娌℃湁浠庡叾浠栧湴鏂圭櫥褰�
-            }else{
-                //璇存槑浠庡叾浠栧湴鏂圭櫥褰曚簡,褰撳墠鐢ㄦ埛鐨剆ession娓呴櫎
-                flag = true;
-                session.invalidate();
-            }
+        }else{
+            //璇存槑浠庡叾浠栧湴鏂圭櫥褰曚簡,褰撳墠鐢ㄦ埛鐨剆ession娓呴櫎
+            flag = true;
+            session.invalidate();
         }
         return flag;
     }

--
Gitblit v1.9.1