使用ListOperations对象操作redis list:

方法 c参数 s说明  
List<V> range(K key, long start, long end);

K key:集合key 
long start:起始位置
long end:结束位置
 获取集合中指定范围的元素  

void trim(K key, long start, long end);

K key:集合key 
long start:起始位置
long end:结束位置

修剪集合中指定范围的元素

这里的修剪的意思就是把start到end之间的集合数据保留,其余的全部删除

 

Long size(K key);

K key:集合key 
 获取集合的长度  

Long leftPush(K key, V value);

K key:集合key
V value:key对应的值
 向集合中添加一个元素。从左到右  

Long leftPushAll(K key, V... values);

K key:集合key
V... values:key对应的值
 向集合中添加一个或多个元素,从左到右  

Long leftPushAll(K key, Collection<V> values);

K key:集合key
Collection<V> values:key对应的值集合
 向集合中添加一个或多个元素,元素以集合的方式存在,从左到右  

Long leftPushIfPresent(K key, V value);

K key:集合key V 
value:key对应的值
 仅当集合存在时,向集合中添加一个元素,从左到右  

Long leftPush(K key, V pivot, V value);

K key:集合key
V pivot:集合中已存在的元素
V value:一个新元素

向集合中添加一个元素,该元素添加在某一个已经存在的元素前边

pivot代表已经存在的元素,value代表新元素

如:[1,2,3] 这是当前集合中的所有元素,现在向这个集合中添加一个元素6

并且将6添加到2的前边,这时方法的参数 pivot则为2,value为6

注:搜索顺序是从左往右

 

Long rightPush(K key, V value);

K key:集合key V 
value:key对应的值
 向集合中他添加一个新元素,从右往左  

Long rightPushAll(K key, V... values);

K key:集合key
V... values:key对应的值
 向集合中添加一个或多个新元素,从右往左  

Long rightPushAll(K key, Collection<V> values);

K key:集合key
Collection<V> values:key对应的值集合
  向集合中添加一个或多个元素,元素以集合的方式存在,从右到左  

Long rightPushIfPresent(K key, V value);

K key:集合key V 
value:key对应的值
 仅当集合存在时,向集合中添加一个元素,从右到左  

Long rightPush(K key, V pivot, V value);

K key:集合key
V pivot:集合中已存在的元素
V value:一个新元素

向集合中添加一个元素,该元素添加在某一个已经存在的元素前边

pivot代表已经存在的元素,value代表新元素

如:[1,2,3] 这是当前集合中的所有元素,现在向这个集合中添加一个元素6

并且将6添加到2的前边,这时方法的参数 pivot则为2,value为6

注:搜索顺序是从右到左

 

void set(K key, long index, V value);

K key:集合key
long index:索引
V value:key对应的值
 向集合中指定索引下添加一个新元素,并覆盖当前集合中指定位置的值  

Long remove(K key, long count, Object value);

K key:集合key
long count:数量
Object value:key对应的值

删除集合中的值,因为list中允许重复数据存在,所以可能有多个相同的

元素存在同一个集合中,这是可用count参数选择性删除数量

 

V index(K key, long index);

K key:集合key
long index:索引
 根据索引获取集合中的元素  

V leftPop(K key);

K key:集合key
 删除集合中所有的元素,并返回集合总第一个元素,从左往右  

V leftPop(K key, long timeout, TimeUnit unit);

K key:集合key 
long timeout:连接超时时长
TimeUnit unit:超时时间单位

删除集合中所有的元素,并返回集合总第一个元素;从左往右

注:以上一个方法,具体区别没有实际验证过,如果有涉及此处的大佬,欢迎评论区解答

 

V rightPop(K key);

K key:集合key
 删除集合中所有的元素,并返回集合总最后一个元素,从右往左  

V rightPop(K key, long timeout, TimeUnit unit);

K key:集合key 
long timeout:连接超时时长
TimeUnit unit:超时时间单位

删除集合中所有的元素,并返回集合总最后一个元素,从右往左

注:以上一个方法,具体区别没有实际验证过,如果有涉及此处的大佬,欢迎评论区解答

 

V rightPopAndLeftPush(K sourceKey, K destinationKey);

K sourceKey:原集合key 
K destinationKey:目标集合key
 在原集合中删除最后一个元素,添加到目标几何中的头部(添加顺序是从左往右)  

V rightPopAndLeftPush(K sourceKey, K destinationKey, long timeout, TimeUnit unit);

K sourceKey:原集合key 
K destinationKey:目标集合key
long timeout:连接超时时长
TimeUnit unit:超时时间单位

在原集合中删除最后一个元素,添加到目标几何中的头部(添加顺序是从左往右)

注:以上一个方法,具体区别没有实际验证过,如果有涉及此处的大佬,欢迎评论区解答

 

使用ListOperations操作redis的更多相关文章

  1. 3、使用ListOperations操作redis(List列表)

    文章来源:https://www.cnblogs.com/shiguotao-com/p/10560354.html 方法 c参数 s说明   List<V> range(K key, l ...

  2. Spring Data操作Redis详解

    Spring Data操作Redis详解 Redis是一种NOSQL数据库,Key-Value形式对数据进行存储,其中数据可以以内存形式存在,也可以持久化到文件系统.Spring data对Redis ...

  3. Spring-data-redis操作redis知识汇总

    什么是spring-data-redis spring-data-redis是spring-data模块的一部分,专门用来支持在spring管理项目对redis的操作,使用java操作redis最常用 ...

  4. Spring-data-redis操作redis知识总结

    什么是spring-data-redis spring-data-redis是spring-data模块的一部分,专门用来支持在spring管理项目对redis的操作,使用java操作redis最常用 ...

  5. springboot之使用redistemplate优雅地操作redis

    概述 本文内容主要 关于spring-redis 关于redis的key设计 redis的基本数据结构 介绍redis与springboot的整合 sringboot中的redistemplate的使 ...

  6. Java Spring mvc 操作 Redis 及 Redis 集群

    本文原创,转载请注明:http://www.cnblogs.com/fengzheng/p/5941953.html 关于 Redis 集群搭建可以参考我的另一篇文章 Redis集群搭建与简单使用 R ...

  7. Java中使用Jedis操作Redis(转载)

    整理 1.字符串 添加:set keyname value 查询:get keyname 拼接:append keyname value 删除:del keyname 添加多个: mset keyna ...

  8. (转)Java中使用Jedis操作Redis

    转自http://www.cnblogs.com/liuling/p/2014-4-19-04.html 使用Java操作Redis需要jedis-2.1.0.jar,下载地址:http://file ...

  9. Python—操作redis

    Python操作redis 连接方式:点击 1.String 操作 redis中的String在在内存中按照一个name对应一个value来存储 set() #在Redis中设置值,默认不存在则创建, ...

随机推荐

  1. golang-Tag

    Tag 理解 Golang中可以对struct定义Tag 例如: type TestTag struct{ UserName string `json:"name"` Age In ...

  2. React性能优化总结(转)

    原文链接: https://segmentfault.com/a/1190000007811296?utm_source=tuicool&utm_medium=referral 初学者对Rea ...

  3. TCP三次挥手四次握手

    三次握手: 客户端发起: 1.向服务器端发送报文SYN=1,ACK=0;客户端进入SYN-SEND状态. 2.服务端收到SYN=1,ACK=0的请求报文,向客户端返回确认报文SYN=1,ACK=1,服 ...

  4. npm ERR! code ENOENT (未找到文件 error no entry)

    问题: ENOENT一般是没找到文件或路径,包括因为权限问题没找到的情况 解决: 我这个是 目录选择错了 其他:

  5. mysql数据库和数据表的简单操作

    一.数据库的增删改查 1.新建数据库 CREATE DATABASE 数据库名 charset utf8; 数据库名规则:可以由字母.数字.下划线.@.#.$ 区分大小写, 不能使用关键字如 crea ...

  6. java对象中的三种状态和脏检查及刷新缓存机制

    瞬时状态 瞬时状态又称临时状态.如果java对象与数据库中的数据没有任何的关联,即此java对象在数据库中没有相关联的记录,此时java对象的状态为瞬时状态,session对于 瞬时状态的ava对象是 ...

  7. 【PBR的基本配置】

    PBR基于策略路由的配置 一:基于报文协议的本地PBR 1:首先进行理论分析:在SW1上利用基于报文报文协议类型的PBR,在sw1与sw3的连接链路上,利用acl制定允许tcp的报文通过3000,并与 ...

  8. 在Pycharm中导入第三方模块库(诸如:matplotlib、numpy等)

    在Pycharm中导入第三方模块库 一.打开pycharm: 二.点击菜单上的“file” -> “setting”: 三.步骤二完成后出现界面如下所示.选中你的项目(比如thisyan Pro ...

  9. Hadoop(23)-Yarn资源调度器

    Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等运算程序则相当于运行于操作系统之上的应用程序 1. Yarn工作机制 机制详解 第1 ...

  10. 日志管理——rsyslog

    官方文档(必看) http://www.rsyslog.com/doc/v8-stable/ 简介 rsyslog是linux自带日志管理工具,分为客户端\服务端,包含日志收集\过滤\分析\转储. 数 ...