通过 Java 操作 redis -- hash 哈希表基本命令

目录

使用命令 hset,hget

使用命令 hexists

使用命令 hdel

使用命令 hkeys,hvals

使用命令 hmget,hmset


关于 redis hash 哈希表类型的相关命令推荐看Redis - hash 哈希表

要想通过 Java 操作 redis,首先要连接上 redis 服务器,推荐看通过 Java 操作 redis -- 连接 redis

        本博客只介绍了一小部分常用的命令,其他的命令根据上面推荐的博客也能很简单的使用出来(推荐先看上面推荐的博客,有 redis 的原生命令)

使用命令 hset,hget

    /*** 使用命令 hset,hget* */public static void test1(Jedis jedis){//清除 redis 所有数据库中的所有数据jedis.flushAll();//向 redis 中添加一个哈希表类型的键值对,哈希表中添加了 f1 - 111 键值对//返回值为添加成功的键值对个数long result1=jedis.hset("key1","f1","111");System.out.println("result1:"+result1);//用哈希表作为参数,直接将哈希表中的键值对都添加到 key2 的哈希表中//返回值为添加成功的键值对个数HashMap<String,String> hashMap=new HashMap<>();hashMap.put("f1","111");hashMap.put("f2","111");hashMap.put("f3","111");long result2=jedis.hset("key2",hashMap);System.out.println("result2:"+result2);//获取 key1 对应的哈希表中,f1 对应的 value 值String result3=jedis.hget("key1","f1");System.out.println("result3:"+result3);}

运行结果

使用命令 hexists

    /*** 使用命令 hexists* */public static void test2(Jedis jedis){//清除 redis 所有数据库中的所有数据jedis.flushAll();jedis.hset("key1","f1","111");//判断 key1 对应的哈希表中是否存在 key 为 f1 的键值对,存在返回 true ,否则返回 falseboolean result1=jedis.hexists("key1","f1");System.out.println("result1:"+result1);boolean result2=jedis.hexists("key1","f2");System.out.println("result2:"+result2);}

运行结果

使用命令 hdel

    /*** 使用命令 hdel* */public static void test3(Jedis jedis){//清除 redis 所有数据库中的所有数据jedis.flushAll();jedis.hset("key1","f1","111");jedis.hset("key1","f2","111");jedis.hset("key1","f3","111");//删除 key1 对应的哈希表中 key 为 f1 和 f2 的键值对long result1=jedis.hdel("key1","f1","f2");System.out.println("result1:"+result1);boolean result2=jedis.hexists("key1","f1");System.out.println("result2:"+result2);boolean result3=jedis.hexists("key1","f2");System.out.println("result3:"+result3);}

运行结果

使用命令 hkeys,hvals

    /*** 使用命令 hkeys,hvals* */public static void test4(Jedis jedis){//清除 redis 所有数据库中的所有数据jedis.flushAll();jedis.hset("key1","f1","111");jedis.hset("key1","f2","222");jedis.hset("key1","f3","333");//获取 key1 对应的哈希表中所有键值对的 key 值Set<String> result1=jedis.hkeys("key1");System.out.println("result1:"+result1);//获取 key1 对应的哈希表中所有键值对的 value 值List<String> result2=jedis.hvals("key1");System.out.println("result2:"+result2);}

运行结果

使用命令 hmget,hmset

    /*** 使用命令 hmget,hmset* */public static void test5(Jedis jedis){//清除 redis 所有数据库中的所有数据jedis.flushAll();Map<String,String>map=new HashMap<>();map.put("f1","111");map.put("f2","222");map.put("f3","333");//批量插入键值对到 key1 对应的 哈希表中,但要使用 Map 作为参数,类似于 hset//插入成功返回 OK,否则返回 FALSEString result1=jedis.hmset("key1",map);System.out.println("result1:"+result1);//批量获取 key1 对应的哈希表中 key 为 f1,f2,f3 对应的 value 值List<String> result2=jedis.hmget("key1","f1","f2","f3");System.out.println("result2:"+result2);}

运行结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/8441.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

员工满意度调查真实度难题如何攻克?

在企业管理实践中&#xff0c;员工满意度调查无疑扮演着举足轻重的角色。它不仅能够帮助企业洞察员工的真实心声&#xff0c;还是企业制定精准管理策略的重要依据。然而&#xff0c;很多时候&#xff0c;员工满意度调查的真实度却令人堪忧&#xff0c;让企业难以获得真实、有效…

手撕多线程

用一个双线程轮流打印1-100 // 定义一个类&#xff0c;用于交替打印奇偶数 public class AlternatePrinting {// 当前待打印的数字&#xff0c;初始为1private int currentNumber 1;// 用作线程间同步的锁对象private final Object lock new Object();// 程序入口public sta…

企业做网站,如何设计才有创意?

企业做网站&#xff0c;如何设计才有创意&#xff1f;我们都希望能打造一个有创意的网站建设&#xff0c;能在众多网站中脱颖而出&#xff0c;能够营销推广公司的产品&#xff0c;为公司带来更多的经济效益收益。广州网站建设的时候&#xff0c;记住直观的设计可以让用户体验更…

批处理脚本示例,用于删除特定目录下所有以 .pdb、.ilk、.lib、.map、.exp 结尾的文件:

以下是一个批处理脚本示例&#xff0c;用于删除特定目录下所有以 .pdb、.ilk、.lib、.map、.exp 结尾的文件&#xff1a; echo off set target_dirC:\path\to\directorydel /S /Q "%target_dir%\*.pdb" del /S /Q "%target_dir%\*.ilk" del /S /Q "%…

福州网站建设如何设计极简风格合理?

福州网站建设如何设计极简风格合理&#xff1f;企业网站逐渐流行&#xff0c;每个人的审美也发生着巨大的改变&#xff0c;开始追求一种极简的风格。简单的 风格才能够凸显原有的主题&#xff0c;不会太过主次不分。 越来越多的网站建设中选择极简的风格&#xff0c;简单的页面…

在Leaflet中点对象使用SVG和Canvas两种模式的对比

目录 前言 一、关于SVG和Canvas 1、SVG知识 2、Canvas知识 3、优缺点 二、SVG和Canvas在Leaflet的使用 1、相关类图 2、Leaflet的默认展示方式 三、SVG和Canvas实例及性能对比 1、SVG模式及性能对比 2、Canvas优化 总结 前言 众所周知&#xff0c;在Leaflet当中&#…

伪装坑人程序

如果直接把坑人程序复制粘贴&#xff0c;肯定会被发现&#xff0c;所以要这样&#xff01; 首先把坑人程序放到C盘的某个重要目录里这样没人注意 然后在显眼的地方创建快捷方式 然后找一个可以伪装的软件&#xff0c;就找到这个软件的快捷方式 右键单击&#xff0c;选择属性…

Datasophon基于dinky1.0.1升级到dinky1.0.2

1.首先下载dinky1.0.2版本 dinky1.0.2下载地址 2.关闭dinky1.0.1 3.升级dinky1.0.2 3.1 解压dinky1.0.2.ta.gz tar -xzvf dinky-release-1.16-1.0.2.tar.gz -C /opt/datasophon/rm -rf dinky-release-1.16-1.0.2.tar.gz复制dinky1.0.1的配置文件到dinky1.0.2目录 cp /op…

C语言易错题(隐式数据类型转换)

uint32_t num (~((uint8_t)0xFF) & 0x12345678); 误以为num计算结果为0x00000000&#xff1b; 实则num值为0x12345600&#xff1b; 原因为(uint8_t)0xFF在进行按位取反前已强制转换为32位的数据&#xff0c;故取反后的值为0xFFFFFF00&#xff0c;按位与0x12345678得到…

Flutter笔记:Widgets Easier组件库(11)- 使用提示吐丝(Tip Toasts)

Flutter笔记 Widgets Easier组件库&#xff08;11&#xff09;使用提示吐丝 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite&#xff1a;http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this …

React 学习-1

安装--使用npm 元素渲染 React只定义一个根节点&#xff0c;由 React DOM 来管理。通过ReactDOM.render()方法将元素渲染到根DOM节点上。 React 元素都是不可变的。当元素被创建之后&#xff0c;你是无法改变其内容或属性的。目前更新界面的唯一办法是创建一个新的元素&#xf…

数据结构-线性表-链表-2.3-5

试编写算法将带头结点的单链表就地逆置&#xff0c;所谓的“就地”是指辅助空间复杂度为O(1) 头插法&#xff0c;将头结点拿下&#xff0c;从第一结点开始&#xff0c;依次插入到头结点的后面直到最后一个结点为止 Linklist Reverse(Linklist L){LNode *p,*r;pL->next;L-&…

贪心,CF721 D. Maxim and Array

目录 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 二、解题报告 1、思路分析 2、复杂度 3、代码详解 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 Problem - 721D - Codeforces 二、解题报告 1、思路分析 如果我们当前乘积…

微信云小程序快速上手云数据库+云函数+云存储的操作

&#x1f680; 作者 &#xff1a;“二当家-小D” &#x1f680; 博主简介&#xff1a;⭐前荔枝FM架构师、阿里资深工程师||曾任职于阿里巴巴担任多个项目负责人&#xff0c;8年开发架构经验&#xff0c;精通java,擅长分布式高并发架构,自动化压力测试&#xff0c;微服务容器化k…

Options API:选项式 API改成Composition API:组合式 API的留言板

让我欢喜让我忧 改成Composition API:组合式 API的代码&#xff0c; <template><!-- start --><span class"span_checkbox">操作<input type"checkbox" v-model"showInput" value"操作" /></span><…

数据结构与算法学习笔记三---栈和队列的表示和实现(C语言)

目录 前言 一、栈 1.栈的概念 2.栈的表示和实现 1.定义 2.初始化 3.销毁 4.清空 5.栈空 6.栈的长度 7.获取栈顶元素 8.入栈 9.出栈 10.遍历 11.完整代码 二、队列 1.队列的概念 2.队列的链式表示和实现 1.定义 2.初始化 3.销毁 4.清空 5.空队列 6.队列长…

大型语言模型(LLMs)是怎样“学习”的?一封给网络工程师的大模型指南

数字时代&#xff0c;人工智能&#xff08;AI&#xff09;及其相关技术正日益成为许多领域的热门话题。其中&#xff0c;生成式人工智能&#xff08;Gen AI&#xff09;和大型语言模型&#xff08;LLMs&#xff09;引起了广泛的兴趣和讨论。然而&#xff0c;尽管这些术语在科技…

哪些博客类型是最受欢迎的?

在创建博客时&#xff0c;您可能会想到的最常见的问题之一是哪些是最受欢迎的博客类型&#xff1f;有许多不同类型的博客涉及广泛的主题&#xff0c;兴趣和受众。对于一个成功的博客&#xff0c;你需要提前计划并选择适合你的利基市场。在本文中&#xff0c;我们将分享您可以立…

在IDEA中如何用Kafka进行异步处理

在IDEA的项目中使用Kafka进行异步处理 在项目的pom.xml文件中&#xff0c;添加以下依赖&#xff1a; <dependency><groupId>org.apache.kafka</groupId><artifactId>kafka-clients</artifactId><version>2.5.0</version> </dep…

旋转矩阵(将坐标轴旋转)

旋转矩阵&#xff08;将坐标轴旋转&#xff09; 在二维空间中&#xff0c;旋转可以用一个单一的角 定义。作为约定&#xff0c;正角表示逆时针旋转。把笛卡尔坐标的列向量关于原点逆时针旋转的矩阵是&#xff1a; 原坐标系下 坐标系逆时针旋转β 补充 sin(-a) -sin(a) co…