From d42f32d6c6ff2cbaab2fbdabbeefb2367e72d446 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 25 三月 2024 17:08:31 +0800
Subject: [PATCH] 新增加功能
---
cloud-server-competition/src/main/java/com/dsh/competition/util/RedisUtil.java | 133 ++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 133 insertions(+), 0 deletions(-)
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/util/RedisUtil.java b/cloud-server-competition/src/main/java/com/dsh/competition/util/RedisUtil.java
new file mode 100644
index 0000000..943c0a6
--- /dev/null
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/util/RedisUtil.java
@@ -0,0 +1,133 @@
+package com.dsh.competition.util;
+
+import com.alibaba.csp.sentinel.util.StringUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+import redis.clients.jedis.Jedis;
+import redis.clients.jedis.JedisPool;
+import redis.clients.jedis.Pipeline;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * Redis工具类
+ */
+@Component
+public class RedisUtil {
+
+ @Autowired
+ private JedisPool jedisPool;
+
+
+ /**
+ * 向redis中存储字符串没有过期时间
+ * Storing strings in Redis without an expiration time.
+ *
+ * @param key
+ * @param value
+ */
+ public void setStrValue(String key, String value) {
+ if (StringUtil.isNotEmpty(key)) {
+ Jedis resource = jedisPool.getResource();
+ String set = resource.set(key, value);
+ closeJedis(resource);
+ }
+ }
+
+
+ /**
+ * 以分钟为单位设置存储值(设置过期时间)
+ * Set storage value in minutes (set expiration time) as units.
+ *
+ * @param key
+ * @param value
+ * @param time 秒
+ */
+ public void setStrValue(String key, String value, int time) {
+ if (StringUtil.isNotEmpty(key)) {
+ Jedis resource = jedisPool.getResource();
+ String setex = resource.setex(key, time, value);
+ closeJedis(resource);
+ }
+ }
+
+
+ /**
+ * 从redis中获取值
+ *
+ * @param key
+ * @return
+ */
+ public String getValue(String key) {
+ if (StringUtil.isNotEmpty(key)) {
+ Jedis resource = jedisPool.getResource();
+ String data = resource.get(key);
+ closeJedis(resource);
+ return data;
+ }
+ return null;
+ }
+
+
+ /**
+ * 批量获取
+ *
+ * @param kes
+ * @return
+ */
+ public List<Object> getValues(List<String> kes) {
+ if (null != kes) {
+ Jedis resource = jedisPool.getResource();
+ Pipeline pipelined = resource.pipelined();
+ for (String key : kes) {
+ pipelined.get(key);
+ }
+ List<Object> list = pipelined.syncAndReturnAll();
+
+ closeJedis(resource);
+ pipelined.clear();
+ try {
+ pipelined.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ List<Object> data = new ArrayList<>();
+ for (Object o : list) {
+ if (null != o) {
+ data.add(o);
+ }
+ }
+ return data;
+ }
+ return null;
+ }
+
+
+ /**
+ * 删除key
+ *
+ * @param key
+ */
+ public void remove(String key) {
+ if (StringUtil.isNotEmpty(key)) {
+ Jedis resource = jedisPool.getResource();
+ Long del = resource.del(key);
+ closeJedis(resource);
+ }
+ }
+
+
+ /**
+ * 删除资源
+ *
+ * @param jedis
+ */
+ public void closeJedis(Jedis jedis) {
+ if (null != jedis) {
+ jedis.close();
+ }
+ }
+}
--
Gitblit v1.7.1