From 4f2d47385d3535edf73634831c56f7fc18ff3494 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期一, 03 四月 2023 10:26:55 +0800 Subject: [PATCH] 去除redis工具类直接使用RedisTemplate存取数据 --- src/main/java/com/genersoft/iot/vmp/utils/redis/RedisUtil.java | 883 +--------------------------------------------------------- 1 files changed, 15 insertions(+), 868 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/utils/redis/RedisUtil.java b/src/main/java/com/genersoft/iot/vmp/utils/redis/RedisUtil.java index e54ed53..31e89f9 100644 --- a/src/main/java/com/genersoft/iot/vmp/utils/redis/RedisUtil.java +++ b/src/main/java/com/genersoft/iot/vmp/utils/redis/RedisUtil.java @@ -1,873 +1,32 @@ package com.genersoft.iot.vmp.utils.redis; -import com.alibaba.fastjson2.JSONObject; -import com.genersoft.iot.vmp.utils.SpringBeanFactory; -import org.springframework.data.redis.core.*; -import org.springframework.util.CollectionUtils; +import org.springframework.data.redis.core.Cursor; +import org.springframework.data.redis.core.RedisCallback; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.data.redis.core.ScanOptions; -import java.util.*; -import java.util.concurrent.TimeUnit; +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; -/** +/** * Redis宸ュ叿绫� + * * @author swwheihei * @date 2020骞�5鏈�6鏃� 涓嬪崍8:27:29 */ @SuppressWarnings(value = {"rawtypes", "unchecked"}) public class RedisUtil { - private static RedisTemplate redisTemplate; - - static { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - - /** - * 鎸囧畾缂撳瓨澶辨晥鏃堕棿 - * @param key 閿� - * @param time 鏃堕棿锛堢锛� - * @return true / false - */ - public static boolean expire(String key, long time) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - if (time > 0) { - redisTemplate.expire(key, time, TimeUnit.SECONDS); - } - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 鏍规嵁 key 鑾峰彇杩囨湡鏃堕棿 - * @param key 閿� - */ - public static long getExpire(String key) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.getExpire(key, TimeUnit.SECONDS); - } - - /** - * 鍒ゆ柇 key 鏄惁瀛樺湪 - * @param key 閿� - * @return true / false - */ - public static boolean hasKey(String key) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - return redisTemplate.hasKey(key); - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 鍒犻櫎缂撳瓨 - * @SuppressWarnings("unchecked") 蹇界暐绫诲瀷杞崲璀﹀憡 - * @param key 閿紙涓�涓垨鑰呭涓級 - */ - public static boolean del(String... key) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - if (key != null && key.length > 0) { - if (key.length == 1) { - redisTemplate.delete(key[0]); - } else { -// 浼犲叆涓�涓� Collection<String> 闆嗗悎 - redisTemplate.delete(CollectionUtils.arrayToList(key)); - } - } - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - -// ============================== String ============================== - - /** - * 鏅�氱紦瀛樿幏鍙� - * @param key 閿� - * @return 鍊� - */ - public static Object get(String key) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return key == null ? null : redisTemplate.opsForValue().get(key); - } - - /** - * 鏅�氱紦瀛樻斁鍏� - * @param key 閿� - * @param value 鍊� - * @return true / false - */ - public static boolean set(String key, Object value) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - redisTemplate.opsForValue().set(key, value); - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 鏅�氱紦瀛樻斁鍏ュ苟璁剧疆鏃堕棿 - * @param key 閿� - * @param value 鍊� - * @param time 鏃堕棿锛堢锛夛紝濡傛灉 time < 0 鍒欒缃棤闄愭椂闂� - * @return true / false - */ - public static boolean set(String key, Object value, long time) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - if (time > 0) { - redisTemplate.opsForValue().set(key, value, time, TimeUnit.SECONDS); - } else { - set(key, value); - } - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 閫掑 - * @param key 閿� - * @param delta 閫掑澶у皬 - * @return - */ - public static long incr(String key, long delta) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - if (delta < 0) { - throw new RuntimeException("閫掑鍥犲瓙蹇呴』澶т簬 0"); - } - return redisTemplate.opsForValue().increment(key, delta); - } - - /** - * 閫掑噺 - * @param key 閿� - * @param delta 閫掑噺澶у皬 - * @return - */ - public static long decr(String key, long delta) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - if (delta < 0) { - throw new RuntimeException("閫掑噺鍥犲瓙蹇呴』澶т簬 0"); - } - return redisTemplate.opsForValue().increment(key, delta); - } - -// ============================== Map ============================== - - /** - * HashGet - * @param key 閿紙no null锛� - * @param item 椤癸紙no null锛� - * @return 鍊� - */ - public static Object hget(String key, String item) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForHash().get(key, item); - } - - /** - * 鑾峰彇 key 瀵瑰簲鐨� map - * @param key 閿紙no null锛� - * @return 瀵瑰簲鐨勫涓敭鍊� - */ - public static Map<Object, Object> hmget(String key) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForHash().entries(key); - } - - /** - * HashSet - * @param key 閿� - * @param map 鍊� - * @return true / false - */ - public static boolean hmset(String key, Map<Object, Object> map) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - redisTemplate.opsForHash().putAll(key, map); - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * HashSet 骞惰缃椂闂� - * @param key 閿� - * @param map 鍊� - * @param time 鏃堕棿 - * @return true / false - */ - public static boolean hmset(String key, Map<?, ?> map, long time) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - redisTemplate.opsForHash().putAll(key, map); - if (time > 0) { - expire(key, time); - } - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 鍚戜竴寮� Hash琛� 涓斁鍏ユ暟鎹紝濡備笉瀛樺湪鍒欏垱寤� - * @param key 閿� - * @param item 椤� - * @param value 鍊� - * @return true / false - */ - public static boolean hset(String key, String item, Object value) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - redisTemplate.opsForHash().put(key, item, value); - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 鍚戜竴寮� Hash琛� 涓斁鍏ユ暟鎹紝骞惰缃椂闂达紝濡備笉瀛樺湪鍒欏垱寤� - * @param key 閿� - * @param item 椤� - * @param value 鍊� - * @param time 鏃堕棿锛堝鏋滃師鏉ョ殑 Hash琛� 璁剧疆浜嗘椂闂达紝杩欓噷浼氳鐩栵級 - * @return true / false - */ - public static boolean hset(String key, String item, Object value, long time) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - redisTemplate.opsForHash().put(key, item, value); - if (time > 0) { - expire(key, time); - } - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 鍒犻櫎 Hash琛� 涓殑鍊� - * @param key 閿� - * @param item 椤癸紙鍙互澶氫釜锛宯o null锛� - */ - public static void hdel(String key, Object... item) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - redisTemplate.opsForHash().delete(key, item); - } - - /** - * 鍒ゆ柇 Hash琛� 涓槸鍚︽湁璇ラ敭鐨勫�� - * @param key 閿紙no null锛� - * @param item 鍊硷紙no null锛� - * @return true / false - */ - public static boolean hHasKey(String key, String item) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForHash().hasKey(key, item); - } - - /** - * Hash閫掑锛屽鏋滀笉瀛樺湪鍒欏垱寤轰竴涓紝骞舵妸鏂板鐨勫�艰繑鍥� - * @param key 閿� - * @param item 椤� - * @param by 閫掑澶у皬 > 0 - * @return - */ - public static Double hincr(String key, String item, Double by) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForHash().increment(key, item, by); - } - - /** - * Hash閫掑噺 - * @param key 閿� - * @param item 椤� - * @param by 閫掑噺澶у皬 - * @return - */ - public static Double hdecr(String key, String item, Double by) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForHash().increment(key, item, -by); - } - -// ============================== Set ============================== - - /** - * 鏍规嵁 key 鑾峰彇 set 涓殑鎵�鏈夊�� - * @param key 閿� - * @return 鍊� - */ - public static Set<Object> sGet(String key) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - return redisTemplate.opsForSet().members(key); - } catch (Exception e) { - e.printStackTrace(); - return null; - } - } - - /** - * 浠庨敭涓� key 鐨� set 涓紝鏍规嵁 value 鏌ヨ鏄惁瀛樺湪 - * @param key 閿� - * @param value 鍊� - * @return true / false - */ - public static boolean sHasKey(String key, Object value) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - return redisTemplate.opsForSet().isMember(key, value); - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 灏嗘暟鎹斁鍏� set缂撳瓨 - * @param key 閿�� - * @param values 鍊硷紙鍙互澶氫釜锛� - * @return 鎴愬姛涓暟 - */ - public static long sSet(String key, Object... values) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - return redisTemplate.opsForSet().add(key, values); - } catch (Exception e) { - e.printStackTrace(); - return 0; - } - } - - /** - * 灏嗘暟鎹斁鍏� set缂撳瓨锛屽苟璁剧疆鏃堕棿 - * @param key 閿� - * @param time 鏃堕棿 - * @param values 鍊硷紙鍙互澶氫釜锛� - * @return 鎴愬姛鏀惧叆涓暟 - */ - public static long sSet(String key, long time, Object... values) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - long count = redisTemplate.opsForSet().add(key, values); - if (time > 0) { - expire(key, time); - } - return count; - } catch (Exception e) { - e.printStackTrace(); - return 0; - } - } - - /** - * 鑾峰彇 set缂撳瓨鐨勯暱搴� - * @param key 閿� - * @return 闀垮害 - */ - public static long sGetSetSize(String key) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - return redisTemplate.opsForSet().size(key); - } catch (Exception e) { - e.printStackTrace(); - return 0; - } - } - - /** - * 绉婚櫎 set缂撳瓨涓紝鍊间负 value 鐨� - * @param key 閿� - * @param values 鍊� - * @return 鎴愬姛绉婚櫎涓暟 - */ - public static long setRemove(String key, Object... values) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - return redisTemplate.opsForSet().remove(key, values); - } catch (Exception e) { - e.printStackTrace(); - return 0; - } - } -// ============================== ZSet ============================== - - /** - * 娣诲姞涓�涓厓绱�, zset涓巗et鏈�澶х殑鍖哄埆灏辨槸姣忎釜鍏冪礌閮芥湁涓�涓猻core锛屽洜姝ゆ湁涓帓搴忕殑杈呭姪鍔熻兘; zadd - * - * @param key - * @param value - * @param score - */ - public static void zAdd(Object key, Object value, double score) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - redisTemplate.opsForZSet().add(key, value, score); - } - - /** - * 鍒犻櫎鍏冪礌 zrem - * - * @param key - * @param value - */ - public static void zRemove(Object key, Object value) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - redisTemplate.opsForZSet().remove(key, value); - } - - /** - * score鐨勫鍔爋r鍑忓皯 zincrby - * - * @param key - * @param value - * @param delta -1 琛ㄧず鍑� 1 琛ㄧず鍔�1 - */ - public static Double zIncrScore(Object key, Object value, double delta) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForZSet().incrementScore(key, value, delta); - } - - /** - * 鏌ヨvalue瀵瑰簲鐨剆core zscore - * - * @param key - * @param value - * @return - */ - public static Double zScore(Object key, Object value) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForZSet().score(key, value); - } - - /** - * 鍒ゆ柇value鍦▃set涓殑鎺掑悕 zrank - * - * @param key - * @param value - * @return - */ - public static Long zRank(Object key, Object value) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForZSet().rank(key, value); - } - - /** - * 杩斿洖闆嗗悎鐨勯暱搴� - * - * @param key - * @return - */ - public static Long zSize(Object key) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForZSet().zCard(key); - } - - /** - * 鏌ヨ闆嗗悎涓寚瀹氶『搴忕殑鍊硷紝 0 -1 琛ㄧず鑾峰彇鍏ㄩ儴鐨勯泦鍚堝唴瀹� zrange - * - * 杩斿洖鏈夊簭鐨勯泦鍚堬紝score灏忕殑鍦ㄥ墠闈� - * - * @param key - * @param start - * @param end - * @return - */ - public static Set<Object> zRange(Object key, int start, int end) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForZSet().range(key, start, end); - } - /** - * 鏌ヨ闆嗗悎涓寚瀹氶『搴忕殑鍊煎拰score锛�0, -1 琛ㄧず鑾峰彇鍏ㄩ儴鐨勯泦鍚堝唴瀹� - * - * @param key - * @param start - * @param end - * @return - */ - public static Set<ZSetOperations.TypedTuple<String>> zRangeWithScore(Object key, int start, int end) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForZSet().rangeWithScores(key, start, end); - } - /** - * 鏌ヨ闆嗗悎涓寚瀹氶『搴忕殑鍊� zrevrange - * - * 杩斿洖鏈夊簭鐨勯泦鍚堜腑锛宻core澶х殑鍦ㄥ墠闈� - * - * @param key - * @param start - * @param end - * @return - */ - public static Set<String> zRevRange(Object key, int start, int end) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForZSet().reverseRange(key, start, end); - } - /** - * 鏍规嵁score鐨勫�硷紝鏉ヨ幏鍙栨弧瓒虫潯浠剁殑闆嗗悎 zrangebyscore - * - * @param key - * @param min - * @param max - * @return - */ - public static Set<String> zSortRange(Object key, int min, int max) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForZSet().rangeByScore(key, min, max); - } - - -// ============================== List ============================== - - /** - * 鑾峰彇 list缂撳瓨鐨勫唴瀹� - * @param key 閿� - * @param start 寮�濮� - * @param end 缁撴潫锛�0 鍒� -1 浠h〃鎵�鏈夊�硷級 - * @return - */ - public static List<Object> lGet(String key, long start, long end) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - return redisTemplate.opsForList().range(key, start, end); - } catch (Exception e) { - e.printStackTrace(); - return null; - } - } - - /** - * 鑾峰彇 list缂撳瓨鐨勯暱搴� - * @param key 閿� - * @return 闀垮害 - */ - public static long lGetListSize(String key) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - return redisTemplate.opsForList().size(key); - } catch (Exception e) { - e.printStackTrace(); - return 0; - } - } - - /** - * 鏍规嵁绱㈠紩 index 鑾峰彇閿负 key 鐨� list 涓殑鍏冪礌 - * @param key 閿� - * @param index 绱㈠紩 - * 褰� index >= 0 鏃� {0:琛ㄥご, 1:绗簩涓厓绱爙 - * 褰� index < 0 鏃� {-1:琛ㄥ熬, -2:鍊掓暟绗簩涓厓绱爙 - * @return 鍊� - */ - public static Object lGetIndex(String key, long index) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - return redisTemplate.opsForList().index(key, index); - } catch (Exception e) { - e.printStackTrace(); - return null; - } - } - - /** - * 灏嗗�� value 鎻掑叆閿负 key 鐨� list 涓紝濡傛灉 list 涓嶅瓨鍦ㄥ垯鍒涘缓绌� list - * @param key 閿� - * @param value 鍊� - * @return true / false - */ - public static boolean lSet(String key, Object value) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - redisTemplate.opsForList().rightPush(key, value); - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 灏嗗�� value 鎻掑叆閿负 key 鐨� list 涓紝骞惰缃椂闂� - * @param key 閿� - * @param value 鍊� - * @param time 鏃堕棿 - * @return true / false - */ - public static boolean lSet(String key, Object value, long time) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - redisTemplate.opsForList().rightPush(key, value); - if (time > 0) { - expire(key, time); - } - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 灏� values 鎻掑叆閿负 key 鐨� list 涓� - * @param key 閿� - * @param values 鍊� - * @return true / false - */ - public static boolean lSetList(String key, List<Object> values) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - redisTemplate.opsForList().rightPushAll(key, values); - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 灏� values 鎻掑叆閿负 key 鐨� list 涓紝骞惰缃椂闂� - * @param key 閿� - * @param values 鍊� - * @param time 鏃堕棿 - * @return true / false - */ - public static boolean lSetList(String key, List<Object> values, long time) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - redisTemplate.opsForList().rightPushAll(key, values); - if (time > 0) { - expire(key, time); - } - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 鏍规嵁绱㈠紩 index 淇敼閿负 key 鐨勫�� - * @param key 閿� - * @param index 绱㈠紩 - * @param value 鍊� - * @return true / false - */ - public static boolean lUpdateIndex(String key, long index, Object value) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - redisTemplate.opsForList().set(key, index, value); - return true; - } catch (Exception e) { - e.printStackTrace(); - return false; - } - } - - /** - * 鍦ㄩ敭涓� key 鐨� list 涓垹闄ゅ�间负 value 鐨勫厓绱� - * @param key 閿� - * @param count 濡傛灉 count == 0 鍒欏垹闄� list 涓墍鏈夊�间负 value 鐨勫厓绱� - * 濡傛灉 count > 0 鍒欏垹闄� list 涓渶宸﹁竟閭d釜鍊间负 value 鐨勫厓绱� - * 濡傛灉 count < 0 鍒欏垹闄� list 涓渶鍙宠竟閭d釜鍊间负 value 鐨勫厓绱� - * @param value - * @return - */ - public static long lRemove(String key, long count, Object value) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - return redisTemplate.opsForList().remove(key, count, value); - } catch (Exception e) { - e.printStackTrace(); - return 0; - } - } - - /** - * 鍦ㄩ敭涓� key 鐨� list涓Щ闄ょ涓�涓厓绱� - * @param key 閿� - * @return - */ - public static Object lLeftPop(String key) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForList().leftPop(key); - } - - /** - * 鍦ㄩ敭涓� key 鐨� list涓Щ闄ゃ�佹渶鍚庝竴涓厓绱� - * @param key 閿� - * @return - */ - public static Object lrightPop(String key) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - return redisTemplate.opsForList().rightPop(key); - } - /** * 妯$硦鏌ヨ - * @param key 閿� - * @return true / false - */ - public static List<Object> keys(String key) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - try { - Set<String> set = redisTemplate.keys(key); - return new ArrayList<>(set); - } catch (Exception e) { - e.printStackTrace(); - return null; - } - } - - - /** - * 妯$硦鏌ヨ + * * @param query 鏌ヨ鍙傛暟 * @return */ -// public static List<Object> scan(String query) { -// List<Object> result = new ArrayList<>(); -// try { -// Cursor<Map.Entry<Object,Object>> cursor = redisTemplate.opsForHash().scan("field", -// ScanOptions.scanOptions().match(query).count(1000).build()); -// while (cursor.hasNext()) { -// Map.Entry<Object,Object> entry = cursor.next(); -// result.add(entry.getKey()); -// Object key = entry.getKey(); -// Object valueSet = entry.getValue(); -// } -// //鍏抽棴cursor -// cursor.close(); -// } catch (Exception e) { -// e.printStackTrace(); -// } -// return result; -// } + public static List<Object> scan(RedisTemplate redisTemplate, String query) { - /** - * 妯$硦鏌ヨ - * @param query 鏌ヨ鍙傛暟 - * @return - */ - public static List<Object> scan(String query) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } Set<String> resultKeys = (Set<String>) redisTemplate.execute((RedisCallback<Set<String>>) connection -> { ScanOptions scanOptions = ScanOptions.scanOptions().match("*" + query + "*").count(1000).build(); Cursor<byte[]> scan = connection.scan(scanOptions); @@ -881,19 +40,7 @@ return new ArrayList<>(resultKeys); } - public static List<Object> scan2(String query) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - Set<String> keys = redisTemplate.keys(query); - return new ArrayList<>(keys); - } - // ============================== 娑堟伅鍙戦�佷笌璁㈤槄 ============================== - public static void convertAndSend(String channel, JSONObject msg) { - if (redisTemplate == null) { - redisTemplate = SpringBeanFactory.getBean("redisTemplate"); - } - redisTemplate.convertAndSend(channel, msg); - } - } + + + -- Gitblit v1.8.0