Redis之List类型操作
生活随笔
收集整理的這篇文章主要介紹了
Redis之List类型操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
接口:
package com.net.test.redis.base.dao;import java.util.List;/*** @author **** @Time:2017年8月10日 上午9:23:07* @version 1.0* @description*/ public interface IRedisDaoList {public void lPush(String key, String value);public void lPushAll(String key, List<String> list);public void set(String key, int offset, String value);public void insert(String key, String value1, String value2);public void getValueByIndex(String key, int offset);public void size(String key);public void remove(String key, long count, String value);public void trim(String key, int start, int end);public void lpop(String key);public void lrange(String key, int start, int end);public void rightPopAndLeftPush(String sourceKey, String destinationKey);}?
實現類:
package com.net.test.redis.base.dao.imp;import java.util.List;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.ListOperations; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Repository;import com.net.test.redis.base.dao.IRedisDaoList;/*** @author **** @Time:2017年8月10日 上午10:58:42* @version 1.0* @description*/ @Repository public class RedisDaoListImp implements IRedisDaoList {@Autowiredprivate RedisTemplate<String, String> redis;/*** @description 簡單的往數組里面添加元素* @param key* @param value*/@Overridepublic void lPush(String key, String value) {ListOperations<String, String> oper = redis.opsForList();int backValue = oper.leftPush(key, value).intValue();System.out.println("返回值 : " + backValue);}/*** @description 批量往數組里面添加元素* @param key* @param list*/public void lPushAll(String key, List<String> list){ListOperations<String, String> oper = redis.opsForList();int backValue = oper.leftPushAll(key, list).intValue();System.out.println("返回值 : " + backValue);}/*** @description 對指定下標的數組元素進行替換* @param key* @param offset* @param value*/@Overridepublic void set(String key, int offset, String value) {ListOperations<String, String> oper = redis.opsForList();oper.set(key, offset, value);}/*** @description 對指定下標的數組進行插入數據* @param key* @param value1 原有值* @param value2 插入的值*/@Overridepublic void insert(String key, String value1, String value2) {ListOperations<String, String> oper = redis.opsForList();int backValue = oper.leftPush(key, value1, value2).intValue();System.out.println("返回值 : " + backValue);}/*** @description 獲取指定下標的數組元素* @param key* @param offset*/@Overridepublic void getValueByIndex(String key, int offset){ListOperations<String, String> oper = redis.opsForList();String value = oper.index(key, offset);System.out.println(offset + "位置下的值為 : " + value);}/*** @description 獲取數組長度* @param key*/@Overridepublic void size(String key) {ListOperations<String, String> oper = redis.opsForList();int length = oper.size(key).intValue();System.out.println(key + " 數組長度為 : " + length);}/*** @description 移除數組匹配到的數據元素* @param key* @param count 負數:從右往左 整數:從左往右* @param value 移除的值*/@Overridepublic void remove(String key, long count, String value) {ListOperations<String, String> oper = redis.opsForList();int backValue = oper.remove(key, count, value).intValue();System.out.println(key + " 數組長度為 : " + backValue);}/*** @description 保留區間內的元素,區間外的全部刪除* @param key* @param start 區間開始* @param end 區間結束*/@Overridepublic void trim(String key, int start, int end) {ListOperations<String, String> oper = redis.opsForList();oper.trim(key, start, end);}/*** @description 從左到右,刪除第一個元素* @param key*/public void lpop(String key){ListOperations<String, String> oper = redis.opsForList();String value = oper.leftPop(key);System.err.println("移除的元素 : " + value);}/*** @description 查詢區間范圍內的元素* @param key* @param start* @param end*/@Overridepublic void lrange(String key, int start, int end) {ListOperations<String, String> oper = redis.opsForList();List<String> list = oper.range(key, start, end);for(String str : list){System.out.println("遍歷 : " + str);} }/*** @description 兩個list之間移元素* @param sourceKey 源* @param destinationKey 目的地*/@Overridepublic void rightPopAndLeftPush(String sourceKey, String destinationKey) {ListOperations<String, String> oper = redis.opsForList();String v = oper.rightPopAndLeftPush(sourceKey, destinationKey);System.out.println("----------" + v);}}?
轉載于:https://www.cnblogs.com/chen1-kerr/p/7345622.html
總結
以上是生活随笔為你收集整理的Redis之List类型操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [cogs1065]绿豆蛙的归宿
- 下一篇: JFinal常量配置学习笔记