From cb61a84acbe4fd6b63fe51180c07b9e9fff787af Mon Sep 17 00:00:00 2001 From: zlyx <1242874891@qq.com> Date: 星期三, 19 十月 2022 09:06:20 +0800 Subject: [PATCH] fix 修正 SysConfig, SysOss 方法内部调用导致缓存不生效 bug ; --- ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/RedisUtils.java | 13 +++++++------ 1 files changed, 7 insertions(+), 6 deletions(-) diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/RedisUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/RedisUtils.java index 20f3ea3..c14b393 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/RedisUtils.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/RedisUtils.java @@ -110,14 +110,13 @@ * @since Redis 6.X 浠ヤ笂浣跨敤 setAndKeepTTL 鍏煎 5.X 鏂规 */ public static <T> void setCacheObject(final String key, final T value, final boolean isSaveTtl) { - RBucket<Object> bucket = CLIENT.getBucket(key); + RBucket<T> bucket = CLIENT.getBucket(key); if (isSaveTtl) { try { bucket.setAndKeepTTL(value); } catch (Exception e) { long timeToLive = bucket.remainTimeToLive(); - bucket.set(value); - bucket.expire(Duration.ofMillis(timeToLive)); + setCacheObject(key, value, Duration.ofMillis(timeToLive)); } } else { bucket.set(value); @@ -132,9 +131,11 @@ * @param duration 鏃堕棿 */ public static <T> void setCacheObject(final String key, final T value, final Duration duration) { - RBucket<T> result = CLIENT.getBucket(key); - result.set(value); - result.expire(duration); + RBatch batch = CLIENT.createBatch(); + RBucketAsync<T> bucket = batch.getBucket(key); + bucket.setAsync(value); + bucket.expireAsync(duration); + batch.execute(); } /** -- Gitblit v1.9.3