From 26419bf11ec888de7af9141a0ac1874065775e61 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期六, 04 十一月 2023 13:59:51 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/utils/RedisUtil.java | 39 +++++++++++++++++++++++++++++++++++++++
1 files changed, 39 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/zy/common/utils/RedisUtil.java b/src/main/java/com/zy/common/utils/RedisUtil.java
index 85e4a0a..33a9694 100644
--- a/src/main/java/com/zy/common/utils/RedisUtil.java
+++ b/src/main/java/com/zy/common/utils/RedisUtil.java
@@ -1,11 +1,13 @@
package com.zy.common.utils;
+import com.baomidou.mybatisplus.toolkit.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -24,8 +26,30 @@
@Autowired
private RedisTemplate redisTemplate;
+ @Autowired
+ private StringRedisTemplate stringRedisTemplate;
+
+ private static final String LOCK_PREFIX = "lock:";
+ private static final long DEFAULT_EXPIRE_TIME = 10; // 榛樿閿佽繃鏈熸椂闂达紝鍗曚綅涓哄垎閽�
+
public RedisUtil(RedisTemplate redisTemplate) {
this.redisTemplate = redisTemplate;
+ }
+
+ /**
+ * Redis鍔犻攣鐨勬搷浣�
+ */
+ public Boolean tryLock(String key) {
+ String redisKey = LOCK_PREFIX + key;
+ return redisTemplate.opsForValue().setIfAbsent(redisKey, "locked", DEFAULT_EXPIRE_TIME, TimeUnit.MINUTES);
+ }
+
+ /**
+ * Redis瑙i攣鐨勬搷浣�
+ */
+ public void unlock(String lockKey) {
+ String redisKey = LOCK_PREFIX + lockKey;
+ redisTemplate.delete(redisKey);
}
/**
@@ -101,6 +125,21 @@
}
/**
+ * 鑾峰彇鍏ㄩ儴鏁版嵁
+ * @return
+ */
+ public HashMap<Object, Object> getRedis() {
+ Set<String> keys = redisTemplate.keys("*");
+ HashMap<Object, Object> map = new HashMap<>();
+ for (String key : keys) {
+ Object value = redisTemplate.opsForValue().get(key);
+ map.put(key, value);
+ }
+
+ return map;//杩斿洖鍏ㄩ儴鏁版嵁闆嗗悎
+ }
+
+ /**
* 鏅�氱紦瀛樻斁鍏�
*
* @param key 閿�
--
Gitblit v1.9.1