From a680310f80728e995fdeb7251b1f270ad02d48e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Mon, 13 Jan 2025 13:35:57 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20satoken=20dao?= =?UTF-8?q?=E5=B1=82=E8=8E=B7=E5=8F=96timeout=E4=B8=BA=E7=A7=92=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E4=B8=A2=E5=A4=B1=E6=AF=AB=E7=A7=92=E8=BF=9B=E5=BA=A6?= =?UTF-8?q?=E9=97=AE=E9=A2=98(=E4=B8=B4=E6=97=B6=E4=BF=AE=E5=A4=8D=20?= =?UTF-8?q?=E7=AD=89satoken=E5=AE=98=E6=96=B9=E8=A7=A3=E5=86=B3)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/satoken/core/dao/PlusSaTokenDao.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java index 38e12c315..a2a152003 100644 --- a/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java +++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/org/dromara/common/satoken/core/dao/PlusSaTokenDao.java @@ -51,7 +51,11 @@ public class PlusSaTokenDao implements SaTokenDao { if (timeout == NEVER_EXPIRE) { RedisUtils.setCacheObject(key, value); } else { - RedisUtils.setCacheObject(key, value, Duration.ofSeconds(timeout)); + if (RedisUtils.hasKey(key)) { + RedisUtils.setCacheObject(key, value, true); + } else { + RedisUtils.setCacheObject(key, value, Duration.ofSeconds(timeout)); + } } CAFFEINE.invalidate(key); } @@ -114,7 +118,11 @@ public class PlusSaTokenDao implements SaTokenDao { if (timeout == NEVER_EXPIRE) { RedisUtils.setCacheObject(key, object); } else { - RedisUtils.setCacheObject(key, object, Duration.ofSeconds(timeout)); + if (RedisUtils.hasKey(key)) { + RedisUtils.setCacheObject(key, object, true); + } else { + RedisUtils.setCacheObject(key, object, Duration.ofSeconds(timeout)); + } } CAFFEINE.invalidate(key); }