Redis在Springboot中的使用——Hash

2023-10-26


数据类型详解

在讲解Redis中Hash的使用之前,大家需要知道Hash是怎么样的结构,方便在合适的场景中去使用。

这个我在之前的博客也有讲过,各位看官老爷可以移步到这篇博客

数据类型:散列表

操作命令

添加

127.0.0.1:6379> help hset

  HSET key field value
  summary: Set the string value of a hash field(设置散列字段的字符串的值)
  since: 2.0.0
  group: hash
  
127.0.0.1:6379> help hmset
  HMSET key field value [field value ...]
  summary: Set multiple hash fields to multiple values(批量设置散列字段的字符串的值)
  since: 2.0.0
  group: hash
如上一个是设置单个k-v,添加m之后就是批量设置k-v
127.0.0.1:6379> help HSETNX
  HSETNX key field value
  summary: Set the value of a hash field, only if the field does not exist(当且仅当散列值不存在时,设置散列值)
  since: 2.0.0
  group: hash

设置成功,返回 1 。
如果给定域已经存在且没有操作被执行,返回 0 。

获取

127.0.0.1:6379> help hget
  HGET key field
  summary: Get the value of a hash field(获取散列函数)
  since: 2.0.0
  group: hash

127.0.0.1:6379> help hmget
  HMGET key field [field ...]
  summary: Get the values of all the given hash fields(批量获取散列函数)
  since: 2.0.0
  group: hash
获取给定域中的值,当给定域不存在或者给定key不存在时,返回nil。
当获取多个的域的时候,按照顺序返回结果
127.0.0.1:6379> help hgetall
  HGETALL key
  summary: Get all the fields and values in a hash(获取散列值中所有的k-v)
  since: 2.0.0
  group: hash

127.0.0.1:6379[2]> help hkeys
  HKEYS key
  summary: Get all the fields in a hash(获取散列值中所有的k)
  since: 2.0.0
  group: hash
  
127.0.0.1:6379[2]> help hvals
  HVALS key
  summary: Get all the values in a hash(获取散列值中所有的v)
  since: 2.0.0
  group: hash
上述三个都是获取该散列值中的几种方法
127.0.0.1:6379[2]> help HLEN
  HLEN key
  summary: Get the number of fields in a hash(获取散列值中的k的数量)
  since: 2.0.0
  group: hash

修改

127.0.0.1:6379[2]> help HSET
  HSET key field value
  summary: Set the string value of a hash field(设置散列值字段的值)
  since: 2.0.0
  group: hash
 
 127.0.0.1:6379[2]> help HMSET
  HMSET key field value [field value ...]
  summary: Set multiple hash fields to multiple values(批量设置)
  since: 2.0.0
  group: hash
  
127.0.0.1:6379[2]> help HSETNX
  HSETNX key field value
  summary: Set the value of a hash field, only if the field does not exist(存在就不在设置)
  since: 2.0.0
  group: hash
与上面添加类似,注意事项也与上述相同

删除

127.0.0.1:6379[2]> help HDEL
  HDEL key field [field ...]
  summary: Delete one or more hash fields(删除该散列值的字段)
  since: 2.0.0
  group: hash

其他操作

127.0.0.1:6379[2]> help HINCRBY
  HINCRBY key field increment
  summary: Increment the integer value of a hash field by the given number(将该hash字段的整数值以给定的数字递增)
  since: 2.0.0
  group: hash
增量也可以为负数,相当于对给定域进行减法操作。
  • 如果 key 不存在,一个新的哈希表被创建并执行 HINCRBY 命令。
  • 如果域 field 不存在,那么在执行命令前,域的值被初始化为 0 。

对一个储存字符串值的域 field 执行 HINCRBY 命令将造成一个错误。

使用


应用场景

购物车

用户个人详情

商品详情

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Redis在Springboot中的使用——Hash 的相关文章

  • 连接Redis集群失败

    我已经设置了 Redis 集群谷歌计算引擎 http console developers google com by 点击部署 https cloud google com solutions redis click to deploy
  • Redis 中嵌套结构的替代方案?

    我不断遇到需要存储的信息比 Redis 任何简单数据结构更复杂的情况 我仍然想使用 Redis 但我想知道人们在理想情况下想要使用嵌套结构时是否有任何标准替代方案 你基本上有两种策略 您可以序列化复杂的对象并将它们存储为字符串 我们建议使用
  • 如何设置Redis最大内存?

    我发现配置在this http redis io topics config 它只是说使用指定配置的命令 redis server
  • 你好!我无法连接 django 上的“heroku redis”

    我已按照以下视频中的所有步骤进行操作 但是 我无法连接 heroku redis 我正在使用 celery 来实现周期性任务 错误如下 2021 04 02 22 00 05 622 错误 MainProcess 消费者 无法连接 到 re
  • RQ - 清空和删除队列

    我在用着RQ http python rq org 我有一个failed排队有数千件物品 还有另一个test我不久前创建的用于测试的队列现在是空的且未使用 我想知道如何删除所有作业failed排队 然后删除test完全排队吗 对于基本问题表
  • Python Reddis 队列 ValueError:worker 无法处理 __main__ 模块中的函数

    我正在尝试使用 python rq 在 redis 中排队一项基本作业 但它会抛出此错误 ValueError 函数来自main模块无法被工作人员处理 这是我的程序 import requests def count words at ur
  • Redis - 考虑重命名其中一个 bean 或通过设置 spring.main.allow-bean-definition-overriding=true 来启用覆盖

    我正在开发Spring Boot Spring Data Redis例子 在此示例中 我正在开发以下代码RedisMessageListenerContainer并在这里定义相应的bean 现在 当我运行该应用程序时 出现以下错误 有人可以
  • 如何在实时添加对象时从 Redis 中弹出对象?

    我想让 Node js 进程运行 因为它正在检查 Redis 服务器是否有任何新的弹出内容 另一个进程将偶尔进行推送 而 Node 进程将尝试弹出任何进来的内容 Node 进程将保持运行 有人能给我指出一个好的方向吗 我正在尝试找出如何监听
  • 是否可以使用带有 FUSE 文件系统的 Linux VFS 缓存?

    默认情况下 Linux VFS 缓存似乎不适用于 FUSE 文件系统 例如 read 调用似乎被系统地转发到 FUSE 文件系统 我在 FUSE 特定的远程文件系统上工作 我需要一个非常积极的缓存 我需要实现自己的页面缓存吗 或者是否可以为
  • 连接到 localhost:6379 时出现错误 99。无法分配请求的地址

    设置 我有一个虚拟机 并在虚拟机中运行三个容器 一个 nginx 代理 一个非常简约的 Flask 应用程序和 redis Flask 应在端口 5000 上提供服务 而 redis 应在 6379 上提供服务 这些容器中的每一个都可以作为
  • 使用 EVAL、SCAN 和 DEL 的 Redis 通配符删除脚本返回“非确定性命令后不允许写入命令”

    因此 我正在寻求构建一个 lua 脚本 该脚本使用 SCAN 根据模式查找键并删除它们 原子地 我首先准备了以下脚本 local keys local done false local cursor 0 repeat local resul
  • 如何在redis中创建自己的数据库?

    There are 0 to 15 databases in redis 我想使用 redis cli 创建自己的数据库 有什么命令可以实现吗 Redis 数据库并不等同于 MySQL 等 DBMS 中的数据库名称 这是一种为键创建隔离和命
  • 使用brew在MacOSx上安装Redis JSON

    如何使用brew 在 macOSx 上安装 RedisJSON 如何在不编译redis的情况下启用redis上的模块 我不想使用 docker 客户端 Redis Stack 可能是最简单的方法 它不仅仅是 RedisJSON 还包括 Re
  • Spring RedisTemplate:8次调用后方法键挂起

    我使用 Spring RedisTemplate spring data redis 1 7 1 与 Redis 进行通信 我需要通过正则表达式获取然后删除键 例如 context user1 我用的方法 RedisTemplate key
  • connect-redis - 如何保护会话对象免受竞争条件影响

    我使用 nodejs 和 connect redis 来存储会话数据 我将用户数据保存在会话中 并在会话生命周期中使用它 我注意到两个更改会话数据的请求之间可能存在竞争条件 我尝试过使用 redis lock 来锁定会话 但这对我来说有点问
  • 保护节点 Redis

    我正在尝试保护 Node Redis IPC 服务器以使用私钥 公钥 我已经关注了本教程 http bencane com 2014 02 18 sending redis traffic through an ssl tunnel wit
  • Stackexchange.redis 缺乏“WAIT”支持

    我在客户端应用程序正在使用的负载均衡器后面有 3 个 Web API 服务器 我正在使用这个库来访问具有一个主服务器和几个从服务器的 Redis 集群 目前不支持 WAIT 操作 我需要此功能来存储新创建的用户会话并等待它复制到所有从属服务
  • Redis键空间事件不触发

    我有两个 Redis 客户端 在一个文件中我有一个简单的脚本设置并删除了 Redis 键 var redis require redis var client redis createClient 6379 127 0 0 1 client
  • Docker-compose Predis 不通过 PHP 连接

    我正在尝试使用 docker compose 将 PHP 与 redis 连接 docker compose yml version 2 services redis image redis 3 2 2 php image company
  • 从redis中检索大数据集

    一台服务器上的应用程序查询另一台服务器上运行的 Redis 查询的结果数据集约为 250kzrangebyscore objects locations inf inf这在应用程序服务器上似乎需要 40 秒 当使用命令执行时redis cl

随机推荐

  • 【贪心算法】最优服务次序问题

    算法实现题 4 6 最优服务次序问题 设有n个顾客同时等待一项服务 顾客i需要的服务时间为ti 应如何安排n个顾客的服务次序才能使平均等待时间达到最小 平均等待时间是n个顾客等待直到完成服务的时间总和除以n 对于给定的n个顾客需要的服务时间
  • gp 索引列表查询,表字段类型,字段注释查询

    所有索引列表 SELECT n nspname as Schema c relname as Name c2 relname as Table FROM pg catalog pg class c JOIN pg catalog pg ro
  • 解决v-for轮播图中图片无法显示

    v fo中src拿不到img的地址 图片无法显示 view可以打印出list data中的img值 说明数组没问题 已经拿到图片值 将src直接赋值地址 有图片显示 那么就是src没有拿到图片地址 网页元素检查中也发现 这里的图片img中没
  • 无盘服务器2018,2018无盘服务器配置

    2018无盘服务器配置 内容精选 换一换 华为云帮助中心 为用户提供产品简介 价格说明 购买指南 用户指南 API参考 最佳实践 常见问题 视频帮助等技术文档 帮助您快速上手使用华为云服务 源端服务器数据收集声明 源端服务器上安装和配置完迁
  • Nerd Font 字体安装

    一 Nerd Font 是什么 Nerd Font 是为开发人员准备的 具有大量字形 图标 的字体 特别是从流行的 标志性字体 中添加大量额外的字形 如Font Awesome Devicons Octicons等 二 安装步骤 1 克隆仓
  • React 下 message组件属性设置

    式子 message info content React ReactNode duration number gt void onClose configonClose 例子 message info 提示内容 自动关闭的延时 单位秒 设
  • MATLAB实现PSO-DBN算法优化深度置信网络的多输入单输出回归预测

    MATLAB实现PSO DBN算法优化深度置信网络的多输入单输出回归预测 随着数据分析和机器学习技术的不断发展 深度学习作为一种强大的分析工具广泛应用于各个领域 在时间序列预测领域中 深度置信网络 Deep Belief Network D
  • c/c++基础(二十三) GDB调试入门

    用GDB调试程序 GDB概述 GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具 或许 各位比较喜欢那种图形界面方式的 像VC BCB等IDE的调试 但如果你是在UNIX平台下做软件 你会发现GDB这个调试工具有比VC BCB的
  • Testing ovn manually based on LXD (by quqi99)

    作者 张华 发表于 2022 05 27 版权声明 可以任意转载 转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明 准备两个LXD容器 lxc list NAME STATE IPV4 IPV6 TYPE SNAPSHOTS
  • 通过 Git 将代码提交到 GitHub

    通过 Git 将代码提交到 GitHub 文章目录 通过 Git 将代码提交到 GitHub 第一种 本地没有 Git 仓库 clone GitHub 上已有的仓库 第二种 将本地普通仓库变成 Git 仓库 并推送到 GitHub 第三种
  • Win7 计算机中丢失api-ms-win-core-path-

    背景 win7安装软件时提示 无法启动此程序 因为计算机中丢失api ms win core path 1 1 0 dll 问题原因 缺少api ms win core path 1 1 0 dll 解决方式 下载dll并放到指定路径 下载
  • 第十二章 演员评论家(Actor-Critic)-强化学习理论学习与代码实现(强化学习导论第二版)

    获取更多资讯 赶快关注上面的公众号吧 强化学习系列 第一章 强化学习及OpenAI Gym介绍 强化学习理论学习与代码实现 强化学习导论第二版 第二章 马尔科夫决策过程和贝尔曼等式 强化学习理论学习与代码实现 强化学习导论第二版 第三章 动
  • asp 打开服务器文件夹,什么是ASP?如何打开ASP文件

    ASP是基于WEB的一种编程技术 可以说是CGI的一种 它可以完成以往CGI程序的所有功能 如计数器 留言簿 公告板 聊天室等等 ASP可以轻松地实现对页面内容的动态控制 根据不同的浏览者 显示不同的页面内容 而浏览者一点觉察不出来 就像为
  • ROS配置DMZ?防火墙教程-ros配置DMZ

    简单的说 当我们内网服务器的所有端口都需要开放到外网的时候 我们需要使用DMZ功能 本文将演示如何将内网IP10 10 10 2的所有端口映射 开放到公网 DMZ是英文 demilitarized zone 的缩写 中文名称为 隔离区 也称
  • Android NestedScrollView嵌套RecyclerView滑动卡顿问题终极解决方案

    如果是如下的页面布局 NestedScrollView嵌套RecyclerView 随着recyclerVIew的加载 item越多 会发现滑动卡顿 大致解决方案有以下两种 方案1 取消recyclerVIew的滑动 mRecyclerVi
  • 【华为OD统一考试A卷

    华为OD统一考试A卷 B卷 新题库说明 2023年5月份 华为官方已经将的 2022 0223Q 1 2 3 4 统一修改为OD统一考试 A卷 和OD统一考试 B卷 你收到的链接上面会标注A卷还是B卷 请注意 根据反馈 目前大部分收到的都是
  • 【深度学习】 Python 和 NumPy 系列教程(二十):Matplotlib详解:2、3d绘图类型(6)3D向量场图(3D Vector Field Plot)

    目录 一 前言 二 实验环境 三 Matplotlib详解 1 2d绘图类型 2 3d绘图类型 0 设置中文字体 1 3D线框图 3D Line Plot 2 3D散点图 3D Scatter Plot 3 3D条形图 3D Bar Plo
  • 两个分数化简比怎么化_小学数学“比的化简和求比值”

    小学数学第十一册中比的化简和要比值 有些小学生觉得有点难 我觉得这部分知识主要是学生还没有掌握以下方法 一 比的化简几种类型 1 比的前项和比的后项都是整数 例 5 25 5 25 1 5 1 5 就是用比的前项除以比的后项 可写成分数的形
  • Java 零基础教程,看完就会,建议收藏

    如果你不懂Java 并且想认真学习接触了解一下Java的语法 建议把这篇文章收藏了 多看几遍 应该可以初步掌握Java 大部分基础的语法 让我们出发吧 ps 本文有点长 耐心阅读 编程环境 工程项目推荐使用IDEA 入门学习推荐使用jupy
  • Redis在Springboot中的使用——Hash

    Redis在Springboot中的使用 Hash 数据类型详解 操作命令 添加 获取 修改 删除 其他操作 使用 应用场景 购物车 用户个人详情 商品详情 数据类型详解 在讲解Redis中Hash的使用之前 大家需要知道Hash是怎么样的