redis | jedis开发框架

Redis学习笔记5:Jedis、RedisTemplate 一、Jedis是什么? Jedis是Redis官方推荐的Java连接开发工具。要在Java开发中使用好Redis中间件,必须对Jedis熟悉才能写成漂亮的代码。 详细了解:https://www.jianshu.com/p/a1038eed6d44 二、RedisTemplate是什么? RedisTemplate是SpringDataRedis中对JedisApi的高度封装。 详细了解:https://www.cnblogs.com/myitnews/p/12297815.html 三、spr 阅读详情

一、Jedis Client介绍
1、简介
Jedis Client是Redis官网推荐的一个面向java客户端,库文件实现了对各类API进行封装调用。
Jedis源码工程地址:https://github.com/xetorthio/jedis

2、在pom文件中引入jedis开发框架

       <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
             <version>2.7.3</version>
        </dependency>

二、Jedis 配置
1、配置文件

#redis settings colony
#redis 服务器ip #
redis1.host=192.168.69.185
#redis服务器端口号# 
redis1.port=7000
redis2.port=7001
#下面是其他redis节点IP地址# 
redis2.host=192.168.69.186
redis3.host=192.168.69.187

2、连接池配置

<!-- 连接池配置 -->
    <bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">
        <!-- 最大连接数 -->
        <property name="maxTotal" value="30" />
        <!-- 最大空闲连接数 -->
        <property name="maxIdle" value="10" />
        <!-- 每次释放连接的最大数目 -->
        <property name="numTestsPerEvictionRun" value="1024" />
        <!-- 释放连接的扫描间隔(毫秒) -->
        <property name="timeBetweenEvictionRunsMillis" value="30000" />
        <!-- 连接最小空闲时间 -->
        <property name="minEvictableIdleTimeMillis" value="1800000" />
        <!-- 连接空闲多久后释放, 当空闲时间>该值 且 空闲连接>最大空闲连接数 时直接释放 -->
        <property name="softMinEvictableIdleTimeMillis" value="10000" />
        <!-- 获取连接时的最大等待毫秒数,小于零:阻塞不确定的时间,默认-1 -->
        <property name="maxWaitMillis" value="1500" />
        <!-- 在获取连接的时候检查有效性, 默认false -->
        <property name="testOnBorrow" value="true" />
        <!-- 在空闲时检查有效性, 默认false -->
        <property name="testWhileIdle" value="true" />
        <!-- 连接耗尽时是否阻塞, false报异常,ture阻塞直到超时, 默认true -->
        <property name="blockWhenExhausted" value="false" />
    </bean>

3、redis集群

<!-- redis集群 -->
    <bean id="jedisCluster" class="redis.clients.jedis.JedisCluster">
        <constructor-arg index="0">
            <set>
                <bean class="redis.clients.jedis.HostAndPort">
                    <constructor-arg index="0" value="${redis1.host}"></constructor-arg>
                    <constructor-arg index="1" value="${redis1.port}"></constructor-arg>
                </bean>
                <bean class="redis.clients.jedis.HostAndPort">
                    <constructor-arg index="0" value="${redis1.host}"></constructor-arg>
                    <constructor-arg index="1" value="${redis2.port}"></constructor-arg>
                </bean>
                <bean class="redis.clients.jedis.HostAndPort">
                    <constructor-arg index="0" value="${redis2.host}"></constructor-arg>
                    <constructor-arg index="1" value="${redis1.port}"></constructor-arg>
                </bean>
                <bean class="redis.clients.jedis.HostAndPort">
                    <constructor-arg index="0" value="${redis2.host}"></constructor-arg>
                    <constructor-arg index="1" value="${redis1.port}"></constructor-arg>
                </bean>
                <bean class="redis.clients.jedis.HostAndPort">
                    <constructor-arg index="0" value="${redis3.host}"></constructor-arg>
                    <constructor-arg index="1" value="${redis1.port}"></constructor-arg>
                </bean>
                <bean class="redis.clients.jedis.HostAndPort">
                    <constructor-arg index="0" value="${redis3.host}"></constructor-arg>
                    <constructor-arg index="1" value="${redis2.port}"></constructor-arg>
                </bean>
            </set>
        </constructor-arg>
        <constructor-arg index="1" ref="jedisPoolConfig"></constructor-arg>
    </bean>

4、利用spring注册bean

@Component("redisUtColony")
public class JedisUtilsColony {
    private static JedisCluster jedisCluster = SpringContextHolder.getBean(JedisCluster.class);
}

注:也可以不用spring进行注入,这里不做介绍了。

三、Jedis Client API

(1)String
Set/Get

Set:设置指定 key 的值
Get:获取指定 key 的值。

String v = jedis.get("key"); 

setex:设置超时时间

将值 value 关联到 key ,并将 key 的过期时间设为 seconds (以秒为单位)。

jedis.setex("key1",2, "value1");

(2) Hash

hset/hget

hset:将哈希表 key 中的字段 field 的值设为 value 。
hget:获取存储在哈希表中指定字段的值。

jedis.hset("key1", "name", "zhangsan");  
String sexValue = jedis.hget("key5","sex");
System.out.println("结果:" + sexValue); 

(5) zset

获取从start到end的set值
Set<byte[]> data = jedis.zrange(keyToBytes(key), start, end);
Jedis 还是 Redisson?90% 的 Java 程序员其实选错了 Redis 在 Java 面试中几乎是必考,而 Jedis 与 Redisson 的对比,更是社招高频陷阱题。一个偏底层、一个偏工程,一个像万能工具箱。本文用故事的方式,带你真正看懂它们的定位、优缺点与真实使用场景,帮你在面试中稳稳回答、不再踩坑。 阅读详情

相关推荐

Jedis与Redisson对比有什么优缺点?

Jedis 和 Redisson 都是广泛使用的 Redis Java 客户端,但设计理念和适用场景存在显著差异。

weixin_39291964的博客 187

# Redis 入门到精通(三)jedis

# Redis 入门到精通(三)jedis 039-jedis-jedis简介 040-jedis-helloworld(jedis版) 041-jedis-jedis常规操作演示 042-jedis-业务请求次数控制案例需求分析 043-jedis-程序结构搭建 044-jedis-程序代码实现 045-jedis工具类制作 046-jedis-可视化客户端介绍

段子手168的博客 1360

从零构建HFSS连接器仿真模型:以SMP接口的精准复现为例

本文详细介绍了如何从零构建HFSS连接器仿真模型,以SMP接口的精准复现为例。通过获取官方模型、导入技巧、信号路径提取和介质结构复现等步骤,帮助工程师避免常见错误,提升高频电路仿真的准确性。文章特别强调了模型精度对仿真结果的影响,并提供了实用的调试和管理建议。

weixin_29041767的博客 430

黑猴子的家:Redis 集群的 Jedis 开发

Code -&gt; GitHub https://github.com/liufengji/redis_cli.git //Redis集群的Jedis开发 @Test public static void JedisSet() { try { Set&lt;HostAndPort&gt; nodes = new HashSet&lt;HostAndPort&gt;...

黑猴子的博客 230

从气象预报到物流规划:多尺度地理加权回归(MGWR)在ArcGIS Pro中的实战应用

本文深入探讨了多尺度地理加权回归(MGWR)在ArcGIS Pro中的实战应用。通过对比传统GWR模型,MGWR的核心优势在于能识别不同解释变量的独特空间作用尺度,有效解决空间异质性问题。文章结合气象预报误差修正与物流网点选址两个案例,详细讲解了从数据准备、参数设置、带宽优化到结果解读的全流程,为地理数据分析师处理复杂空间数据提供了强大工具。

egg99的博客 1034

5分钟搞定!用Coze+剪映小助手批量生成萌宠视频(附完整工作流配置)

本文详细介绍了如何利用Coze工作流与剪映小助手快速批量生成萌宠视频的完整方案。通过智能内容生成、素材处理、剪辑组装和输出适配四大模块的协同,实现5分钟内完成高质量视频制作。特别适合多宠物账号运营者,工作流支持模板切换和参数修改,大幅提升内容生产效率。

weixin_28678151的博客 391

Redis简述与Jedis开发

转自:https://blog.youkuaiyun.com/u013256816/article/details/51120023 Redis 简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。 Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。 Re...

qq_32534441的博客 397

NY8A053E 例程 之 PWM Ouput

更多关于NY8A053E的相关例程请留言!

倪彬笑阳的博客 2925

Redis的Java客户端jedis

Redis的Java客户端 Jedis的官网地址为:添加链接描述,下面我们来快速搭建一个项目: 1.引入依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>3.7.0</version> </dependen

weixin_46015291的博客 2253

避坑指南:LVGL在Arduino环境编译报错?3步搞定lv_conf.h路径问题(附ST7789屏幕调试技巧)

本文详细解析了在Arduino环境中配置LVGL图形库时,如何解决常见的“lv_conf.h file not found”编译报错问题。通过三步法:定位并复制模板文件、启用核心配置并指定路径、配置基础参数,从根本上解决路径问题。文章还结合ST7789屏幕驱动,分享了使用TFT_eSPI库进行显示适配、内存优化及背光控制等实战调试技巧,帮助开发者建立清晰、可维护的嵌入式UI工程基础。

lake5的博客 860

【Inpho精品教程】Inpho简介、安装教程(附Inpho8安装包下载)

本文介绍Trimble旗下Inpho UASMaster航空摄影测量软件,涵盖其核心功能模块(如Match-AT、OrthoMaster、Summit Evolution等)及安装教程。文章详细说明了从安装到汉化破解的全过程,并提供Inpho 8.0.1安装包下载链接与提取码,适用于无人机摄影测量专业用户。

智慧空间实验室 1万+

Redis的java客户端

Jedis快速入门 Jedis的官网地址:https://github.com/redis/jedis 引入依赖: <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> &lt

lxzGood的博客 1509

RK3568平台(网络篇)WIFI模块RTL8821CU调试

RTL8821CU是瑞昱半导体推出的usb接口的wifi,下面的教程将介绍如何将RTL8821CU移植到rk3588的平台上。移植usb wifi需要修改的文件Android hal层需要修改的文件//kernel需要修改的文件kernel/arch/arm64/boot/dts/rockchip/rk3399-tve1030g.dtsi //除去板上的sdio的wifi。

weixin_49303682的博客 3905

jedis与redission的区别

Redis的两个框架: Jedis与RedissonJedis api 在线网址http://tool.oschina.net/uploads/apidocs/redis/clients/jedis/Jedis.html redisson 官网https://redisson.org/ redisson git项目地址https://github.com/redisson/redisson ...

krismile__qh的博客 1万+

ROCm rocr-libhsakmt分析系列9-3: queue的内核创建流程

KFD队列是用户空间与GPU通信的核心机制,通过多种队列类型(计算、DMA、调试等)实现命令流管理。核心数据结构包括描述队列属性的queue_properties、内核调度对象queue、进程级管理器process_queue_manager,以及跨进程设备的qcm_process_device等。这些结构通过ring buffer、doorbell机制和MQD硬件描述符协同工作,支持队列全生命周期管理、资源调度、异常处理和上下文保存/恢复功能。

图形/计算GPU的驱动与虚拟化技术分享园地 2130

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Springboot + redis操作多种实现(以及Jedis,Redisson,Lettuce的区别比较)

Springboot + redis 操作多种实现一、Jedis,Redisson,Lettuce三者的区别二、Jedis三、RedisTemplate3.1、使用配置3.2、使用示例3.3、扩展3.3.1、spring-boot-starter-data-redis的依赖包3.3.2、stringRedisTemplate API(部分展示)3.3.3 StringRedisTemplate默认...

诗和远方,任重道远 2万+

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Redis框架Jedis及Redisson的对比

本文的主要内容为对比Redis的两个框架:Jedis与Redisson,分析各自的优势与缺点,为项目中Java缓存方案中的Redis编程模型的选择提供参考。 Jedis与Redisson对比 1.概况对比 Jedis是Redis的Java实现的客户端,其API提供了比较全面的Redis命令的支持;Redisson实现了分布式和可扩展的Java数据结构,和Jedis相比,功能较为简单,不支持字符串操作,不支持排序、事务、管道、分区等Redis特性。Redisson的宗旨是促进使用者对Redis的关注分离,从而

qf2019的博客 1856

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

[redis][9]jedis 和 redisson 有哪些区别

Redis的两个框架: Jedis与RedissonJedis api 在线网址http://tool.oschina.net/uploads/apidocs/redis/clients/jedis/Jedis.html redisson 官网https://redisson.org/ redisson git项目地址https://github.com/redisson/redisson lettuce 官网地址:https://lettuce.io/ lettuce git项目地址:https

猿来是你 1652

Redis介绍之Jedis的使用

Jedis 概述   Jedis是Redis官方推荐的Java连接开发工具。要在Java开发中使用好Redis中间件,必须对Jedis熟悉才能写成漂亮的代码,下面我们就来对Jedis的使用进行详细介绍。 一、基本的使用 redis配置文件的修改  1、注释掉绑定的信息   在redis.conf的配置文件中bind配置的信息表示的是redis服务可以接收外部访问的地址,这个主要还是为了提高安全性...

知性人 -- 的博客 319

Redis的几个框架

Redis官方对Java语言的封装框架推荐有十多种,主要有:Jedis、Lettuce、Redisson 1几个框架的对比 三个框架都是在Java中对Redis操作的封装。 1.1 Jedis github: github.com/xetorthio/j… Jedis是Redis的Java实现的客户端,其API提供了比较全面的Redis命令的支持。支持基本的数据类型如:String、Has...

weixin_34326429的博客 4975

Redis的两个框架:Jedis与Redisson(深入学习redis)

Redis的两个框架:Jedis与RedissonJedis api 在线网址http://tool.oschina.net/uploads/apidocs/redis/clients/jedis/Jedis.htmlredisson 官网https://redisson.org/redisson git项目地址https://github.com/redisson/redisson1  概述1....

niuzaiwenjie的专栏 1万+

Jedis vs Redisson,到底怎么选?

本文主要内容对比Redis的两个框架:Jedis与Redisson,分析各自的优势与缺点,为项目中Java缓存方案中的Redis编程模型的选择提供参考。Jedis与RedissonJed...

Java技术栈,分享最主流的Java技术 1750

Spring Data Redis入门小Demo

现在面临这样一个问题:现在把项目跑起来,网站首页的访问压力会很大,因为每次访问都会去数据库查一遍广告表,这样广告表的访问压力会很大,那每个人都访问,每个人都访问,这不是我们最终的一个解决方案了。我们这时候对数据库访问压力太大,那么我们怎么才能降低对数据库的访问压力呢?这时候我们通常会用到缓存,之前讲过一个缓存类的产品,叫Redis,我们现在可以简单回顾一下这个Redis。

ronybo的博客 467

Redis && Spring Data Redis && Spring Cache

使用方式通常为Jedis或者RedisTemplate。

qq_42765398的博客 947

Redis知识整理(二):结合源码讲一下Spring集成Redis的两种方式:Jedis和RedisTemplate

一、Redis简介 Redis是一种非关系型(K-V)数据库,也叫做缓存数据库,类似于Memcached ,但有着以下优点: (1)Redis不仅仅支持简单的字符串类型的K-V数据,还支持hash 、list、set、zset等多种数据类型。 (2)Redis支持 master-slave(主—从)模式应用,memcache 支持分布式 (3)Redis支持数据的备份,即master-slave模...

by_yanzhenshun的博客 1009

jedis-mock 的安装和配置教程

jedis-mock 的安装和配置教程 项目基础介绍 jedis-mock 是一个开源的 Java 项目,主要用于模拟 Redis 服务器的行为,使得开发者在没有实际 Redis 服务器的情况下也能进行开发和测试。它提供了一个简单的 Redis 服务器模拟器,能够帮助开发者快速验证和测试 Redis 相关操作。 主要编程语言 该项目的主要编程语言是 Java。 项目使用的关键技术和框架 jedis...

gitblog_00227的博客 890
上一篇: redis | 常用五大数据类型
下一篇: JAVA基础 | 1 概述
mengmengdastyle
博客等级 码龄11年 63粉丝 120原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值