Redis入门很简单之六【Jedis常见操作】

Visual Studio 2013 + Intel(R) Visual Fortran 安装教程 安装了好几遍,ivf都不能加载到vs中,中途放弃了vs,又改用codeblocks编译器,依然在写fortran的时候出现了各种问题,于是又放弃了codeblocks改回vs,总之是折腾了好久,终于装明白了ivf并且将fortran模板成功加载到vs中。 PS:一定要安装Intel Visual Fortran.Composer XE.2013-SP1,不要用Intel Visual Fortr... 阅读详情

之前介绍了Jedis的基本操作,连接池的支持,以及和Spring的整合。接下来的内容,继续Jedis的最为常见的操作。主要包括常用的列表(list)、集合(set)、有序集合(sorted set)、哈希表(hash)等数据结构,以及其他特性支持。

<一>. 使用list:
 可以使用列表模拟队列(queue)、堆栈(stack),并且支持双向的操作(L或者R)。
 1. 右边入队:

Java代码  收藏代码
  1. jedis.rpush("userList", "James");  

  2. 左边出队:右边出栈(rpop),即为对堆栈的操作。

Java代码  收藏代码
  1. jedis.lpop("userList");  

  3. 返回列表范围:从0开始,到最后一个(-1) [包含] 

Java代码  收藏代码
  1. List<String> userList = jedis.lrange("userList", 0, -1);  

   Redis的TopN操作,即使用list完成:lrange
 4. 删除:使用key

Java代码  收藏代码
  1. jedis.del("userList");  

  5. 设置:位置1处为新值

Java代码  收藏代码
  1. jedis.lset("userList", 1, "Nick Xu");  

  6. 返回长度:

Java代码  收藏代码
  1. Long size = jedis.llen("userList");  

  7. 进行裁剪:包含

Java代码  收藏代码
  1. jedis.ltrim("userList", 1, 2);  

 
 <二>. 使用set:和列表不同,集合中的元素是无序的,因此元素也不能重复。
 1. 添加到set:可一次添加多个

Java代码  收藏代码
  1. jedis.sadd("fruit", "apple");  
  2. jedis.sadd("fruit", "pear", "watermelon");  
  3. jedis.sadd("fruit", "apple");  

 2. 遍历集合:

Java代码  收藏代码
  1. Set<String> fruit = jedis.smembers("fruit");  

  3. 移除元素:remove

Java代码  收藏代码
  1. jedis.srem("fruit", "pear");  

  4. 返回长度:

Java代码  收藏代码
  1. Long size = jedis.scard("fruit");  

  5. 是否包含:

Java代码  收藏代码
  1. Boolean isMember = jedis.sismember("fruit", "pear");  

  6. 集合的操作:包括集合的交运算(sinter)、差集(sdiff)、并集(sunion)

Java代码  收藏代码
  1. jedis.sadd("food", "bread", "milk");   
  2. Set<String> fruitFood = jedis.sunion("fruit", "food");  

   
<三>. 使用sorted set:有序集合在集合的基础上,增加了一个用于排序的参数。
 1. 有序集合:根据“第二个参数”进行排序。

Java代码  收藏代码
  1. jedis.zadd("user", 22, "James");  

 2. 再次添加:元素相同时,更新为当前的权重。

Java代码  收藏代码
  1. jedis.zadd("user", 24, "James");  

  3. zset的范围:找到从0到-1的所有元素。

Java代码  收藏代码
  1. Set<String> user = jedis.zrange("user", 0, -1);  

  4. 说明:我们可能还有一个疑虑,集合是怎么做到有序的呢?
   实际上,上述user的数据类型为java.util.LinkedHashSet
   
<四>. 使用hash:
 1. 存放数据:使用HashMap

Java代码  收藏代码
  1. Map<String, String>  capital = new HashMap<String, String>();  
  2. capital.put("shannxi", "xi'an");  
  3. ...  
  4. jedis.hmset("capital", capital);  

   2. 获取数据:

Java代码  收藏代码
  1. List<String> cities = jedis.hmget("capital", "shannxi", "shanghai");  

   
<五>. 其他操作:
 1. 对key的操作:
  @ 对key的模糊查询:

Java代码  收藏代码
  1. Set<String> keys = jedis.keys("*");  
  2. Set<String> keys = jedis.keys("user.userid.*");  

  @ 删除key:

Java代码  收藏代码
  1. jedis.del("city");  

    @ 是否存在:

Java代码  收藏代码
  1. Boolean isExists = jedis.exists("user.userid.14101");  

  2. 失效时间:
  @ expire:时间为5s

Java代码  收藏代码
  1. jedis.setex("user.userid.14101", 5, "James");  

  @ 存活时间(ttl):time to live

Java代码  收藏代码
  1. Long seconds = jedis.ttl("user.userid.14101");  

  @ 去掉key的expire设置:不再有失效时间

Java代码  收藏代码
  1. jedis.persist("user.userid.14101");  

 3. 自增的整型:
  @ int类型采用string类型的方式存储:

Java代码  收藏代码
  1. jedis.set("amount", 100 + "");  

  @ 递增或递减:incr()/decr()

Java代码  收藏代码
  1. jedis.incr("amount");  

  @ 增加或减少:incrBy()/decrBy()

Java代码  收藏代码
  1. jedis.incrBy("amount", 20);  

 4. 数据清空:
  @ 清空当前db:

Java代码  收藏代码
  1. jedis.flushDB();  

    @ 清空所有db:

Java代码  收藏代码
  1. jedis.flushAll();  

  5. 事务支持:
  @ 获取事务:

Java代码  收藏代码
  1. Transaction tx = jedis.multi();  

    @ 批量操作:tx采用和jedis一致的API接口

Java代码  收藏代码
  1. for(int i = 0;i < 10;i ++) {  
  2.      tx.set("key" + i, "value" + i);   
  3.      System.out.println("--------key" + i);  
  4.      Thread.sleep(1000);    
  5. }  

  @ 执行事务:针对每一个操作,返回其执行的结果,成功即为Ok

Java代码  收藏代码
  1. List<Object> results = tx.exec();  
【Unity UGUI源码深度解析】03|Graphic源码解析:一个UI元素如何从Dirty标记走到屏幕 UGUI源码深度解析》第 3 篇 · 界面小组工作日志基准:Unity 2022.3.62f2c1 / 本地 UGUI 1.0.0。人物情节为虚构,实验为待执行的验证方案。 阅读详情

相关推荐

Winform使用TreeView控件实现带复选框的三态树

刚接触c#,项目中用到Treeview实现三态,即选中、未选中、半选中状态,并且要求父子节点选择联动,效果类似下图网上有很多例子,于是研究了一下,结合网上大佬们的例子,所以在这里记录一下。首先新建一个Winform工程拖个TreeView控件,然后运行。。。嗯。。。加点数据吧。private void CreateTree() { TreeNode anime = new TreeNode...

laoyezha的博客 2万+

java jedis list 操作_Java中使用Jedis操作Redis的实现代码

一. redis的安装1.下载源码,解压缩后编译源码。[root@cwt123 ~]# tar xzf redis-2.8.3.tar.gz[root@cwt123 ~]# cd redis-2.8.3[root@cwt123 ~]# make2.启动Redis服务。(src在redis-2.8.3下)[root@cwt123 ~]# cd src[root@cwt123 ~] ./redis...

weixin_32601635的博客 730

RTC时钟芯片替换代码移植-IIC通信

1、问题 RTC时钟芯片由爱普生RX-8010SJ更换成大普INS5710A,两者都是IIC通信,更换大普芯片后时钟不走、以及报掉电错误。仿真分析原因是CPU和RTC芯片收发数据延时不够导致,根据爱普生芯片手册,8010收发数据不采取延时,但大普芯片采用同样方式读取不行(需要加延时) 2、RX-8010SJ手册说明(以读取数据为例) (1)寄存器读操作时序图 指定地址读操作: 1)CPU 发送开始条件[S] 2)CPU 传输RX-8010SJ 的从地址,用R/W 位设定写模式 3)检测从RX-8010

weixin_42851683的博客 2067

Jedis的常用操作

转载至: https://blog.youkuaiyun.com/meaijojo/article/details/82903553 一、jedis jedis 是 redis推荐的java客户端。通过Jedis我们可以很方便地使用java代码的方式,对redis进行操作。jedis使用起来比较简单,它的操作方法与redis命令相类似。对于初次使用redis的人来说,上手更快,更能适应。jedis在github上的下载地址为https://github.com/xetorthio/jedis 。本例子使用maven,需

weixin_41864357的博客 3664

STM32与SD卡SPI接口硬件设计:从原理图到调试的完整指南

SPI(串行外设接口)作为一种广泛应用的同步串行通信协议,以其接线简单、驱动成熟的特点,成为连接微控制器与各类外设的经典方案。其工作原理基于主从架构,通过时钟、数据线和片选信号实现全双工通信,在嵌入式系统中具有极高的技术价值,常用于连接传感器、存储设备和显示模块等。在数据存储场景中,SD卡凭借其大容量和便携性成为首选,而通过SPI模式驱动SD卡,则平衡了性能与设计复杂度。本文聚焦于使用Altium Designer进行硬件设计的工程实践,详细解析了STM32微控制器与SD卡通过SPI通信时,电源管理、上拉电

weixin_34101784的博客 555

解密高并发系统的瓶颈:五大解决方案

在互联网应用中,高并发是指在短时间内同时有大量的用户访问一个网站或服务,造成系统压力过大,导致服务器宕机或服务停止响应的情况。高并发是互联网应用面临的一个重要问题,需要采取一系列措施来解决。负载均衡、缓存、数据库优化、异步处理和分布式架构是解决高并发问题的主要方法。在实际应用中,需要根据具体情况选择不同的方法来解决高并发问题。在高并发情况下,使用负载均衡是解决问题的一种常见方法。负载均衡可以通过将请求分配到多个服务器上,从而减少单个服务器的负载。这可以通过硬件设备或软件实现。

BUG制造者:图图 <p>这是一个P标签</p> 3906

Redis常用命令

Redis::__construct描述:创建一个Redis客户端范例:$redis = new Redis(); connect, open描述:实例连接到一个Redis.参数:host: string        port: int返回值:BOOL 成功返回:TRUE;失败返回:FALSE范例:$redis-&gt;connect(‘127.0.0.1′, 6379);get描述:...

weixin_33730836的博客 207

【无标题】EXCEL实现刷题

运用Excel开发的刷题工具,具有普遍实用性,可将WORD的试题自动导入并实现刷题。

weixin_44081794的博客 2976

Jedis的基本操作方法

一、Jedis介绍 jedis 是 redis推荐的java客户端。通过Jedis我们可以很方便地使用java代码的方式,对redis进行操作。jedis使用起来比较简单,它的操作方法与redis命令相类似。对于初次使用redis的人来说,上手更快,更能适应。本例子使用maven,需要添加如下依赖: <!-- https://mvnrepository.com/arti...

游王子og的博客 5195

ANSYS Maxwell:创建即用型 3D 轴向磁通电机模型

Magnet Length” 是磁体的径向长度。“Magnet Thickness” 是磁体的轴向长度。为了对 AFM 进行更详细的分析,用户需要在 ANSYS Maxwell 中运行 3D FEA 分析。对于 2D 模型,它们类似于 MotorCAD 中的模型,后者对等效的直线电机进行建模。单击“确定”后,将创建一个 3D Maxwell 模型。“长度”是转子铁的轴向长度。然后需要定义定子的“磁芯”尺寸和材料。“长度”是定子铁芯的轴向长度。“转子”# 的极数必须与“定子”中定义的磁极相同。

jkh920184196的博客 1933

【软件系统架构】系列六:系统工程

系统工程是一种跨学科方法论,用于分析、设计、集成和管理复杂系统的全生命周期。其核心特点包括系统性思维、全周期管理、跨学科协作和需求导向。主流采用V模型生命周期,涵盖需求分析、系统设计、实现、测试验证及运维退役等阶段。核心工作方法包括需求工程、系统建模、接口设计、风险管理等。系统工程与项目管理协同,分别侧重技术实现和进度资源管理。应用领域覆盖航天军工、智能制造、智慧城市等。未来将向AI融合、数字孪生、模型驱动工程等方向发展,为复杂系统开发提供系统化协作范式。

moton2017的博客 2259

jedis操作set_Redis入门很简单之六【Jedis常见操作】

之前介绍了Jedis的基本操作,连接池的支持,以及和Spring的整合。接下来的内容,继续Jedis的最为常见的操作。主要包括常用的列表(list)、集合(set)、有序集合(sorted set)、哈希表(hash)等数据结构,以及其他特性支持。. 使用list:可以使用列表模拟队列(queue)、堆栈(stack),并且支持双向的操作(L或者R)。1. 右边入队:jedis.rpush("us...

weixin_29062613的博客 1205

063.CI/CD for ML:给YOLO项目装上自动化流水线

本文分享了为YOLO目标检测项目搭建CI/CD流水线的实践经验。作者通过手动调试模型导出问题的经历,意识到重复验证工作比模型改进更耗时,提出需要自动化解决方案。文章详细介绍了四阶段流水线设计:1)代码质量检查;2)快速训练验证;3)推理性能基准测试;4)模型注册部署。同时总结了环境不一致、GPU资源争抢等常见问题及解决方案,建议从简单规则开始逐步完善,强调模型版本管理的重要性。实施后不仅提高了效率,还促使团队形成更规范的开发习惯。

2603_95664987的博客 236

Redis详解(六)Jedis操作Redis

文章目录Redis详解(六)Jedis操作Redis1.下载jedis和commons-pool单独使用jedis2.Java应用使用Jedis准备 Redis详解(六)Jedis操作Redis 使用jedis在java应用中操作Redis。Jedis几乎涵盖了redis的所有命令。 jedis源码:https://github.com/redis/jedis 1.下载jedis和commons-pool <!-- https://mvnrepository.com/artifact/redis.

sunnygao的博客 1156

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Redis基础学习(六):JAVA操作Redis之Jedis

Jedis 1、概述 Jedis是Redis官方推荐的Java连接开发工具。要在Java开发中使用好Redis中间件,必须对Jedis熟悉才能写成漂亮的代码 2、基本使用 1、pom依赖 <!-- 阿里JSON解析器 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</arti

好好学习天天向上 627

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Java Jedis操作Redis示例(六)——Redis的存储方案

转载:Redis和Memcached的区别(数据类型、内存管理、数据持久化、集群管理) 转载:Redis的五种对象类型及其底层实现 转载:redis 的两种持久化方式及原理 转载:Redis学习笔记9--Redis持久化 转载:Redis Cluster集群的搭建与实践 转载: 一 Redis的对象模型 Redis内部使用一个redisObject对象来表示所有的key和valu

Invoker's Tower 3148

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

上一篇: Redis入门很简单之五【Jedis和Spring的整合】
下一篇: Redis入门很简单之七【使用Jedis实现客户端Sharding】
codepython
博客等级 码龄20年 125粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值