redis-学习笔记(Jedis 前置知识)

自定义的 Redis 客户端

咱们可以实现编写出一个自定义的 Redis 客户端
因为 Redis 公开了自己使用的自定义协议 ---- RESP

协议清楚了, 那么通信数据格式就清除了, 就能完成各层次之间的数据传输, 就能开发服务器和客户端


在这里插入图片描述

RESP — Redis 的 序列化 协议

特点:

  1. 简单好实现
  2. 快读进行解析
  3. 肉眼可读

知道了协议, 我们就能实现客户端, 实现了客户端, 就可以使用 客户端(idea, eclipse …) 来操作 redis, 而不是只能使用 redis 自带的命令行的模式

在这里插入图片描述


redis 客户端服务器要做的工作有:

  1. 按照协议格式, 构造字符串, 往 socket 中写入
  2. 从 socket 中读取字符串, 按照协议格式进行解析

然而, 需要你自己去实现一个客户端吗?
答案是否定的, redis 客户端服务器公开那么久, 已经有大佬实现了这套协议的 构造 / 解析, 我们只需要使用这些大佬们提供的库, 就可以简单方便的完成和 redis 服务器通信的操作


Jedis

Jedis 就是 Java 生态中, 封装了 RESP 协议, 实现的 redis 客户端, 简单地说你可以在代码中使用 Jedis 来操作 redis, 而不用再使用 redis 客户端.

如何使用?

引入依赖
Maven 项目中引入依赖

在这里插入图片描述

倒也不用非得是最新的版本(会有bug), 4.xx 版本足够使用

在这里插入图片描述

配置端口映射

在这里插入图片描述
在这里插入图片描述

之后重启 redis
后续 Java 中, 通过 127.0.0.1:8888 就可以操作到云服务器的 redis

开启服务器后, 使用 Java ping 一下 redis

在这里插入图片描述
在这里插入图片描述

对于 redis 中每中类型的操作指令, 会在后面的博客中进行详细描述
Java 操作 redis 的 Gitee 地址

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

HarmonyOS给应用添加弹窗

给您的应用添加弹窗 概述 在我们日常使用应用的时候,可能会进行一些敏感的操作,比如删除联系人,这时候我们给应用添加弹窗来提示用户是否需要执行该操作,如下图所示: 弹窗是一种模态窗口,通常用来展示用户…

安装odoo17 Windows版时,PostgreSQL Database无法被勾选

安装odoo17 Windows版时,PostgreSQL Database无法被勾选。 出现的原因是,曾经安装过PostgreSQL Database;虽然可能已被卸载,但注册表内还有残余信息,导致odoo认为PostgreSQL Database仍存在于系统之中。 解决方案 删…

MySQL笔记-第10章_创建和管理表

视频链接:【MySQL数据库入门到大牛,mysql安装到优化,百科全书级,全网天花板】 文章目录 第10章_创建和管理表1. 基础知识1.1 一条数据存储的过程1.2 标识符命名规则1.3 MySQL中的数据类型 2. 创建和管理数据库2.1 创建数据库2.2 使…

用友系列之YonBuilder低代码平台概论和基本使用

文章目录 前言一、低代码平台是什么?二、用友的YonBuilder应用构建平台2.1.YonBuilder应用构建平台2.2.丰富的组件库和可视化设计器2.3.完善的应用全生命周期管理2.4.完善的学习社区 三、用友的YonBuilder应用构建平台实战3.1. 注册账号、登录3.2.进入开发者中心工作…

Fluter工具安装与环境搭建

1、下载 Flutter SDK,下载完成后,在需要放置SDK的地方解压即可。 注意: 请勿将 Flutter 有特殊字符或空格的路径下。请勿将 Flutter 安装在需要高权限的文件夹内,例如 C:\Program Files\。 2、配置环境变量 例如: …

MySQL笔记-第07章_单行函数

视频链接:【MySQL数据库入门到大牛,mysql安装到优化,百科全书级,全网天花板】 文章目录 第07章_单行函数1. 函数的理解1.1 什么是函数1.2 不同DBMS函数的差异1.3 MySQL的内置函数及分类 2. 数值函数2.1 基本函数2.2 角度与弧度互换…

vue3若依框架,在页面中点击新增按钮跳转到新的页面,不是弹框,如何实现

在router文件中的动态路由数组中新增一个路由配置,这个配置的就是新的页面。 注意path不要和菜单配置中的路径一样,会不显示内容。 在菜单配置中要写权限标识就是permissions:[]里的内容 在children里的path要写占位符info/:data 点击新增按钮&#x…

ISP去噪(1)

#灵感# 因为理解的2DNR、3DNR 和当前调试平台标注的2DNR、3DNR 作用有很大差异,所以在网上广撒网,搜集知识。 目前收集出来一个这样的文章,有点像大学生的论文“取其精华,合成糟粕”。------权当一个记录册 目录 运动阈值&…

生成小程序URLlink链接遇到的坑

这里写自定义目录标题 前端生成小程序URL link背景用户打开小程序的常用方法短链接短链接优缺点优点缺点 生成短链接步骤 可能会遇到的问题:其他 注意📢 前端生成小程序URL link ![h5打开小程序](https://img-blog.csdnimg.cn/direct/a4cfe3ef6d184c6d9…

vue3 使用 Element-plus 的 el-pagination 分页组件时无法显示中文

使用element-puss框架,分页显示英文 解决方法 在main.ts element-puss,2.3.8版本后的, import zhCn from "element-plus/es/locale/lang/zh-cn"; element-puss,2.3.8版本以前的, import zhCn from "element-plus/lib/loc…

MBR30300FCT-ASEMI高耐压肖特基MBR30300FCT

编辑:ll MBR30300FCT-ASEMI高耐压肖特基MBR30300FCT 型号:MBR30200FCT 品牌:ASEMI 封装:TO-220F 最大平均正向电流:30A 最大重复峰值反向电压:300V 产品引线数量:3 产品内部芯片个数&…

将输入的字符串反向输出(c语言)

#include<stdio.h> #include<string.h> int main() {int i, j, k;char s[50], temp;gets(s);//输入k strlen(s);//计算字符的长度//反向输出for (i 0, j k - 1;i < k / 2;i, j--){temp s[i];s[i] s[j];s[j] temp;}puts(s);//输出 }

山西电力市场日前价格预测【2023-12-11】

日前价格预测 预测说明&#xff1a; 如上图所示&#xff0c;预测明日&#xff08;2023-12-11&#xff09;山西电力市场全天平均日前电价为535.55元/MWh。其中&#xff0c;最高日前电价为689.29元/MWh&#xff0c;预计出现在09:00。最低日前电价为422.38元/MWh&#xff0c;预计…

springCloud项目打包如何把jar发放到指定目录下

springCloud项目打包如何把jar发放到指定目录下 maven-antrun-plugin springCloud微服务打包jar&#xff0c;模块过多&#xff1b;我的项目模块结构如下&#xff1a; 我把实体类相关的单独抽离一个模块在service-api下服务单独写在service某块下&#xff0c; 每个模块的jar都…

利用知识付费小程序,我有才打造高效的知识传播渠道

在当今信息爆炸的时代&#xff0c;知识管理已经成为了每个人必须面对的问题。然而&#xff0c;市面上的知识付费平台大多数都是通用的&#xff0c;无法满足个性化需求。 因此&#xff0c;我有才提供了一款专属定制的适合个人的知识付费平台。核心产品能力如下&#xff1a; 一…

[论文精读] 使用扩散模型生成真实感视频 - 【李飞飞团队新作,文生视频 新基准】

论文导读: 论文背景:2023年12月11日&#xff0c;AI科学家李飞飞团队与谷歌合作&#xff0c;推出了视频生成模型W.A.L.T&#xff08;Window Attention Latent Transformer&#xff09;——一个在共享潜在空间中训练图像和视频生成的、基于Transformer架构的扩散模型。李飞飞是华…

【安装配置vue最详细的方法】检查vue版本时,报错“‘vue’ 不是内部或外部命令,也不是可运行的程序或批处理文件”

目录 问题&#xff1a;通过cmd检查vue版本时&#xff0c;报错 vue’ 不是内部或外部命令&#xff0c;也不是可运行的程序或批处理文件1、检查npm版本&#xff0c;查看是否安装&#xff0c;如果未安装请先安装node和npm2、进入 node.js 的安装目录中查看一级目录下是否存在 vue.…

字符设备驱动开发基础

一. 简介 本文简单了解一下&#xff0c;在字符设备驱动开发开始前对其一些基本认识。简单了解一下&#xff0c;应用程序与驱动的交互原理&#xff0c;以及字符设备驱动开发流程。 二. 字符设备驱动开发流程 1. 在 Linux 中一切皆为文件&#xff0c;驱动加载成功以后会在“…

PySpark中FMClassifier与RandomForestClassifier的比较

在比较 PySpark 中的 FMClassifier&#xff08;因子分解机分类器&#xff09;和 RandomForestClassifier&#xff08;随机森林分类器&#xff09;时&#xff0c;我们不能简单地说一个比另一个更先进&#xff0c;因为它们是针对不同类型的问题和数据集设计的。选择哪个分类器更多…

【MySQL备份】MySQL备份工具-MyDumper

目录 什么是MyDumper MyDumper优势有哪些 如何安装MyDumper 参数解释 1 mydumper参数解释 备份流程 一致性快照如何工作&#xff1f; 如何排除&#xff08;或包含&#xff09;数据库&#xff1f; 输出文件 Metadata文件 ​编辑 表数据 文件 表结构 文件 建库文件…