日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Redis之List类型操作

發布時間:2025/3/15 数据库 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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类型操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。