From dd25573ebce3450d90d0012a30b12a5185bc7310 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期五, 08 七月 2022 15:49:15 +0800
Subject: [PATCH] update 使用 @param 注释替换 @Parameter 注解 fix 修复 token 无法传递 与 无法持久化问题
---
ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/RedisUtils.java | 84 ++++++++++++++++++++++++++++++++++--------
1 files changed, 68 insertions(+), 16 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 aa5c0dc..7ed3b28 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
@@ -6,11 +6,11 @@
import lombok.NoArgsConstructor;
import org.redisson.api.*;
+import java.time.Duration;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Set;
-import java.util.concurrent.TimeUnit;
import java.util.function.Consumer;
/**
@@ -107,7 +107,7 @@
} catch (Exception e) {
long timeToLive = bucket.remainTimeToLive();
bucket.set(value);
- bucket.expire(timeToLive, TimeUnit.MILLISECONDS);
+ bucket.expire(Duration.ofMillis(timeToLive));
}
} else {
bucket.set(value);
@@ -119,18 +119,17 @@
*
* @param key 缂撳瓨鐨勯敭鍊�
* @param value 缂撳瓨鐨勫��
- * @param timeout 鏃堕棿
- * @param timeUnit 鏃堕棿棰楃矑搴�
+ * @param duration 鏃堕棿
*/
- public static <T> void setCacheObject(final String key, final T value, final long timeout, final TimeUnit timeUnit) {
+ 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(timeout, timeUnit);
+ result.expire(duration);
}
/**
* 娉ㄥ唽瀵硅薄鐩戝惉鍣�
- *
+ * <p>
* key 鐩戝惉鍣ㄩ渶寮�鍚� `notify-keyspace-events` 绛� redis 鐩稿叧閰嶇疆
*
* @param key 缂撳瓨鐨勯敭鍊�
@@ -149,20 +148,19 @@
* @return true=璁剧疆鎴愬姛锛沠alse=璁剧疆澶辫触
*/
public static boolean expire(final String key, final long timeout) {
- return expire(key, timeout, TimeUnit.SECONDS);
+ return expire(key, Duration.ofSeconds(timeout));
}
/**
* 璁剧疆鏈夋晥鏃堕棿
*
- * @param key Redis閿�
- * @param timeout 瓒呮椂鏃堕棿
- * @param unit 鏃堕棿鍗曚綅
+ * @param key Redis閿�
+ * @param duration 瓒呮椂鏃堕棿
* @return true=璁剧疆鎴愬姛锛沠alse=璁剧疆澶辫触
*/
- public static boolean expire(final String key, final long timeout, final TimeUnit unit) {
+ public static boolean expire(final String key, final Duration duration) {
RBucket rBucket = CLIENT.getBucket(key);
- return rBucket.expire(timeout, unit);
+ return rBucket.expire(duration);
}
/**
@@ -223,7 +221,7 @@
/**
* 娉ㄥ唽List鐩戝惉鍣�
- *
+ * <p>
* key 鐩戝惉鍣ㄩ渶寮�鍚� `notify-keyspace-events` 绛� redis 鐩稿叧閰嶇疆
*
* @param key 缂撳瓨鐨勯敭鍊�
@@ -259,7 +257,7 @@
/**
* 娉ㄥ唽Set鐩戝惉鍣�
- *
+ * <p>
* key 鐩戝惉鍣ㄩ渶寮�鍚� `notify-keyspace-events` 绛� redis 鐩稿叧閰嶇疆
*
* @param key 缂撳瓨鐨勯敭鍊�
@@ -296,7 +294,7 @@
/**
* 娉ㄥ唽Map鐩戝惉鍣�
- *
+ * <p>
* key 鐩戝惉鍣ㄩ渶寮�鍚� `notify-keyspace-events` 绛� redis 鐩稿叧閰嶇疆
*
* @param key 缂撳瓨鐨勯敭鍊�
@@ -367,6 +365,50 @@
}
/**
+ * 璁剧疆鍘熷瓙鍊�
+ *
+ * @param key Redis閿�
+ * @param value 鍊�
+ */
+ public static void setAtomicValue(String key, long value) {
+ RAtomicLong atomic = CLIENT.getAtomicLong(key);
+ atomic.set(value);
+ }
+
+ /**
+ * 鑾峰彇鍘熷瓙鍊�
+ *
+ * @param key Redis閿�
+ * @return 褰撳墠鍊�
+ */
+ public static long getAtomicValue(String key) {
+ RAtomicLong atomic = CLIENT.getAtomicLong(key);
+ return atomic.get();
+ }
+
+ /**
+ * 閫掑鍘熷瓙鍊�
+ *
+ * @param key Redis閿�
+ * @return 褰撳墠鍊�
+ */
+ public static long incrAtomicValue(String key) {
+ RAtomicLong atomic = CLIENT.getAtomicLong(key);
+ return atomic.incrementAndGet();
+ }
+
+ /**
+ * 閫掑噺鍘熷瓙鍊�
+ *
+ * @param key Redis閿�
+ * @return 褰撳墠鍊�
+ */
+ public static long decrAtomicValue(String key) {
+ RAtomicLong atomic = CLIENT.getAtomicLong(key);
+ return atomic.decrementAndGet();
+ }
+
+ /**
* 鑾峰緱缂撳瓨鐨勫熀鏈璞″垪琛�
*
* @param pattern 瀛楃涓插墠缂�
@@ -376,4 +418,14 @@
Iterable<String> iterable = CLIENT.getKeys().getKeysByPattern(pattern);
return IterUtil.toList(iterable);
}
+
+ /**
+ * 妫�鏌edis涓槸鍚﹀瓨鍦╧ey
+ *
+ * @param key 閿�
+ */
+ public static Boolean hasKey(String key) {
+ RKeys rKeys = CLIENT.getKeys();
+ return rKeys.countExists(key) > 0;
+ }
}
--
Gitblit v1.9.3