From f7f8e9cc7de686fe3e8ef424f1d50fa821255449 Mon Sep 17 00:00:00 2001
From: whycxzp <perryhsu@163.com>
Date: 星期六, 23 一月 2021 17:30:48 +0800
Subject: [PATCH] update

---
 src/main/java/com/whyc/filter/KickedOutFilter.java |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/whyc/filter/KickedOutFilter.java b/src/main/java/com/whyc/filter/KickedOutFilter.java
index 858a11d..3fb0272 100644
--- a/src/main/java/com/whyc/filter/KickedOutFilter.java
+++ b/src/main/java/com/whyc/filter/KickedOutFilter.java
@@ -2,7 +2,10 @@
 
 import com.whyc.pojo.User;
 import com.whyc.util.ShiroUtil;
+import org.redisson.api.RedissonClient;
+import org.springframework.beans.factory.annotation.Autowired;
 
+import javax.annotation.Resource;
 import javax.servlet.*;
 import javax.servlet.annotation.WebFilter;
 import javax.servlet.http.HttpServletRequest;
@@ -15,6 +18,9 @@
 @WebFilter(urlPatterns = "/*",filterName = "kickedOutFilter")
 public class KickedOutFilter implements Filter {
 
+    @Autowired
+    RedissonClient redissonClient;
+
     @Override
     public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
         HttpSession session = ((HttpServletRequest) request).getSession();
@@ -23,7 +29,7 @@
             User user = ShiroUtil.getUser();
             if (user.getId() != 0) {
                 System.out.println("Filter杩囨护鍣ㄤ腑鑾峰彇鍒扮殑褰撳墠Session鐨凷essionId涓�:" + session.getId());
-                if (!request.getServletContext().getAttribute(user.getName()).equals(session.getId())) {
+                if (!redissonClient.getBucket(user.getName()).get().equals(session.getId())) {
                     //濡傛灉褰撳墠Session鎵�瀵瑰簲鐨凷essionId涓庡叏灞�涓敤鎴峰搴旂殑SessionId涓嶄竴鑷�,鍒欐竻闄ゅ綋鍓峉ession
                     session.invalidate();
                     response.setContentType("text/html;charset=utf-8");

--
Gitblit v1.9.1