From 9486766c806fe1d9e082b2fd02ea1cc558f1b443 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期四, 08 五月 2025 09:21:57 +0800 Subject: [PATCH] bug修改 --- cloud-server-activity/src/main/java/com/dsh/activity/util/RedisUtil.java | 133 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 133 insertions(+), 0 deletions(-) diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/util/RedisUtil.java b/cloud-server-activity/src/main/java/com/dsh/activity/util/RedisUtil.java new file mode 100644 index 0000000..16325f5 --- /dev/null +++ b/cloud-server-activity/src/main/java/com/dsh/activity/util/RedisUtil.java @@ -0,0 +1,133 @@ +package com.dsh.activity.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