From d881c982247d66139f5a941d7021743ad0c6b43c Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期六, 10 十月 2020 17:33:02 +0800
Subject: [PATCH] web页面集成

---
 src/main/java/com/genersoft/iot/vmp/utils/redis/RedisUtil.java |  118 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 117 insertions(+), 1 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 a03f9aa..463d942 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
@@ -8,12 +8,13 @@
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.data.redis.core.ZSetOperations;
 import org.springframework.stereotype.Component;
 import org.springframework.util.CollectionUtils;
 
 /**    
  * @Description:Redis宸ュ叿绫�
- * @author: songww
+ * @author: swwheihei
  * @date:   2020骞�5鏈�6鏃� 涓嬪崍8:27:29     
  */
 @Component
@@ -389,6 +390,121 @@
             return 0;
         }
     }
+//    ============================== ZSet ==============================
+
+    /**
+     * 娣诲姞涓�涓厓绱�, zset涓巗et鏈�澶х殑鍖哄埆灏辨槸姣忎釜鍏冪礌閮芥湁涓�涓猻core锛屽洜姝ゆ湁涓帓搴忕殑杈呭姪鍔熻兘;  zadd
+     *
+     * @param key
+     * @param value
+     * @param score
+     */
+    public void zAdd(String key, String value, double score) {
+        redisTemplate.opsForZSet().add(key, value, score);
+    }
+
+    /**
+     * 鍒犻櫎鍏冪礌 zrem
+     *
+     * @param key
+     * @param value
+     */
+    public void zRemove(String key, String value) {
+        redisTemplate.opsForZSet().remove(key, value);
+    }
+
+    /**
+     * score鐨勫鍔爋r鍑忓皯 zincrby
+     *
+     * @param key
+     * @param value
+     * @param score
+     */
+    public Double zIncrScore(String key, String value, double score) {
+        return redisTemplate.opsForZSet().incrementScore(key, value, score);
+    }
+
+    /**
+     * 鏌ヨvalue瀵瑰簲鐨剆core   zscore
+     *
+     * @param key
+     * @param value
+     * @return
+     */
+    public Double zScore(String key, String value) {
+        return redisTemplate.opsForZSet().score(key, value);
+    }
+
+    /**
+     * 鍒ゆ柇value鍦▃set涓殑鎺掑悕  zrank
+     *
+     * @param key
+     * @param value
+     * @return
+     */
+    public Long zRank(String key, String value) {
+        return redisTemplate.opsForZSet().rank(key, value);
+    }
+
+    /**
+     * 杩斿洖闆嗗悎鐨勯暱搴�
+     *
+     * @param key
+     * @return
+     */
+    public Long zSize(String key) {
+        return redisTemplate.opsForZSet().zCard(key);
+    }
+
+    /**
+     * 鏌ヨ闆嗗悎涓寚瀹氶『搴忕殑鍊硷紝 0 -1 琛ㄧず鑾峰彇鍏ㄩ儴鐨勯泦鍚堝唴瀹�  zrange
+     *
+     * 杩斿洖鏈夊簭鐨勯泦鍚堬紝score灏忕殑鍦ㄥ墠闈�
+     *
+     * @param key
+     * @param start
+     * @param end
+     * @return
+     */
+    public Set<String> ZRange(String key, int start, int end) {
+        return redisTemplate.opsForZSet().range(key, start, end);
+    }
+    /**
+     * 鏌ヨ闆嗗悎涓寚瀹氶『搴忕殑鍊煎拰score锛�0, -1 琛ㄧず鑾峰彇鍏ㄩ儴鐨勯泦鍚堝唴瀹�
+     *
+     * @param key
+     * @param start
+     * @param end
+     * @return
+     */
+    public Set<ZSetOperations.TypedTuple<String>> zRangeWithScore(String key, int start, int end) {
+        return redisTemplate.opsForZSet().rangeWithScores(key, start, end);
+    }
+    /**
+     * 鏌ヨ闆嗗悎涓寚瀹氶『搴忕殑鍊�  zrevrange
+     *
+     * 杩斿洖鏈夊簭鐨勯泦鍚堜腑锛宻core澶х殑鍦ㄥ墠闈�
+     *
+     * @param key
+     * @param start
+     * @param end
+     * @return
+     */
+    public Set<String> zRevRange(String key, int start, int end) {
+        return redisTemplate.opsForZSet().reverseRange(key, start, end);
+    }
+    /**
+     * 鏍规嵁score鐨勫�硷紝鏉ヨ幏鍙栨弧瓒虫潯浠剁殑闆嗗悎  zrangebyscore
+     *
+     * @param key
+     * @param min
+     * @param max
+     * @return
+     */
+    public Set<String> zSortRange(String key, int min, int max) {
+        return redisTemplate.opsForZSet().rangeByScore(key, min, max);
+    }
+
 
 //    ============================== List ==============================
 

--
Gitblit v1.8.0