redis的客户端
目录
- redis的客户端
- 一:jedis
- 1:jedis的使用步骤:
- 2:jedis连接池
- 二:springDataRedis
- 1:入门使用
- 2:配置序列化器
- 3:stringRedisTemplate
redis的客户端
一:jedis
1:jedis的使用步骤:
1:引入依赖
2:建立连接
3:执行命令;
4:释放资源:
private redis.clients.jedis.Jedis jedis;
@BeforeEachpublic void setJedis(){jedis =new redis.clients.jedis.Jedis("123.249.00.000",6379);jedis.auth("12345");}@Testpublic void testString(){jedis.set("name","zhangsan");System.out.println("jedis.get(\"name\") = " + jedis.get("name"));}@AfterEachpublic void down(){if (jedis!=null){jedis.close();}}
这里先建立连接,然后执行操作,操作的名称和我们redis命令的名称几乎一样,然后再释放资源,释放资源之前要判断是否为空,不然可能会空指针;
2:jedis连接池
public class JedisConnectionFactory {public static final JedisPool jedisPool;static {JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();jedisPoolConfig.setMaxIdle(8);jedisPoolConfig.setMinIdle(0);jedisPoolConfig.setMaxTotal(8);jedisPool =new JedisPool(jedisPoolConfig,"123.249.86.145",6379,1000,"12345");}public static Jedis getJedisPool(){return jedisPool.getResource();}
}
具体代码:先声明一个连接池对象,在静态代码块中对连接池对象进行初始化,要传入配置信息,首先构造一个配置对象,配置最大连接数,最小连接数,最大连接等待时长,然后在构造一个静态方法能够获取jedis对象,从连接池中获取;
二:springDataRedis
1:入门使用
如何使用:
1:引入依赖:
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
2:在配置文件中配置redis相关配置:
spring:redis:host: ipport: 6379password: your_passwordlettuce:pool:max-active: 8max-idle: 8min-idle: 0max-wait: 100ms
3:就能注入redistemplate来使用了:
@Autowired
private RedisTemplate redisTemplate;
@Test
void testString() {redisTemplate.opsForValue().set("name","伟哥");System.out.println("redisTemplate.opsForValue().get(\"name\") = " +redisTemplate.opsForValue().get("name"));
}
2:配置序列化器
@Bean
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory connectionFactory) {//创建template对象RedisTemplate<String, Object> stringObjectRedisTemplate = new RedisTemplate<>();//连接工厂stringObjectRedisTemplate.setConnectionFactory(connectionFactory);//创建json序列化器GenericJackson2JsonRedisSerializer genericJackson2JsonRedisSerializer = new GenericJackson2JsonRedisSerializer();//为key配置序列化器stringObjectRedisTemplate.setKeySerializer(RedisSerializer.string());//为hashkey配置stringObjectRedisTemplate.setHashKeySerializer(RedisSerializer.string());//为value配置序列化器stringObjectRedisTemplate.setValueSerializer(genericJackson2JsonRedisSerializer);//为hashvalue配置序列化器stringObjectRedisTemplate.setHashValueSerializer(genericJackson2JsonRedisSerializer);return stringObjectRedisTemplate;
}
3:stringRedisTemplate
为了节省空间,我们不使用自动转换json的序列化器,我们需要手动转换,然后我们可以使用stringtemplate,这里面自动帮我们配置了string的序列化器;
@Test
void testUser() {User wfw = new User("wfw", 11);String jsonString = JSON.toJSONString(wfw);stringRedisTemplate.opsForValue().set("user:101",jsonString);String o = stringRedisTemplate.opsForValue().get("user:100");User user = JSONObject.parseObject(o, User.class);System.out.println("o = " + user);
}
ing o = stringRedisTemplate.opsForValue().get("user:100");User user = JSONObject.parseObject(o, User.class);System.out.println("o = " + user);
}
相关文章:
redis的客户端
目录 redis的客户端一:jedis1:jedis的使用步骤:2:jedis连接池 二:springDataRedis1:入门使用2:配置序列化器3:stringRedisTemplate redis的客户端 一:jedis 1:jedis的使…...
图片分类标注工具python
图片分类标注工具 运行代码:将代码保存到 Python 文件中并运行。选择文件夹:运行时会弹出对话框,选择要分类的图片文件夹。标注分类:程序会逐张显示图片,你可以在下方输入框中输入类别标签,并点击“Next”…...
Rust命令行,实现自动反编译Android APK包工具
Rust-CLI实现自动反编译APK Rust提供了比较好的CLI接口,可以快速的编写命令行应用, 用于日常的工具类使用。 分享一个用Rust命令行实现自动反编译Android APK包工具,是之前学习Rust写的一个练手小工具,可以快速反编译APK,同时也学习下用Rust…...
10. NSTableView Table 数据表格
表格是非常重要和复杂的一个控件,本节会用大量篇幅来把表格这东西力求讲清楚。 基本设置 表格结构 表格是 OS X 组件中为数不多采用了MVC设计模式来实现的控件,即tableView–dataSource–Delegate,这种分层架构给处理数据带来了极大的便利…...
javase笔记8---File与IO流
File类型 简介 在程序中,使用java.io.File这个类来描述和操作磁盘上的一个文件或文件夹(目录)。 File这个类,能新建、删除、移动,重命名文件或文件夹,也能获取或者修改文件或文件夹的信息(如大小,修改时间等)…...
docker上传离线镜像包到Artifactory
docker上传离线镜像包到Artifactory 原创 大阳 北京晓数神州科技有限公司 2024年10月25日 17:33 北京 随着docker官方源的封禁,最近国内资源也出现无法拉取的问题,Artifactory在生产环境中,很少挂外网代理去官方源拉取,小编提供…...
【专用名词的离线语音识别在2024年底的解决方法调查-会议签到的补充】
语音识别在会议点名中的使用 概要解决问题的过程不行的一些参考可以的一个package自定义词语的拼音转换遗留的问题 小结 概要 提示:这里可以添加技术概要 这里只实现一个方面,每个android会议设备都可通过语音发送参会者姓名,自动转换成文字添加到人员名单. 语音采集…...
OS基础-
OS基础 内存管理 内核用户设备管理 设备框架I/O子系统网络多媒体 音频视频运维 控制台GUIdebug审计计算机组成 CPU ALUregister SPLRPCR0-R12CPSRcacheclockInterrupt Vector tableIVTRMMU/MPU 内存访问权限配置,支持多进程BUSMEMORYI/O单线程 特点:结构…...
《大型语言模型实战指南:应用实践与场景落地》一文详解大型语言模型的11种微调方法
导读:大型预训练模型是一种在大规模语料库上预先训练的深度学习模型,它们可以通过在大量无标注数据上进行训练来学习通用语言表示,并在各种下游任务中进行微调和迁移。随着模型参数规模的扩大,微调和推理阶段的资源消耗也在增加。…...
嵌入式浏览器 -- Chromium VS Firefox
嵌入式浏览器概念 嵌入式浏览器是嵌入式系统中的核心组件之一,用于为设备提供网络访问能力和内容显示功能。与传统PC浏览器相比,嵌入式浏览器更加注重性能优化和资源效率,同时确保核心功能可用,如HTML渲染、JavaScript支持和多媒…...
权限大、数量多、破坏强、管理难......企业特权访问管理怎么管?
特权账号,通往企业数据大门的“钥匙”。 它权限大,具有高危命令或操作的执行权限; 破坏性强,操作可能影响他人使用或其他系统故障; 信息泄露风险大,操作可能获取别人或其他系统相关隐私信息;…...
UE5 第一人称示例代码阅读0 UEnhancedInputComponent
UEnhancedInputComponent使用流程 我的总结示例分析firstthenand thenfinally&代码关于键盘输入XYZ 我的总结 这个东西是一个对输入进行控制的系统,看了一下第一人称例子里,算是看明白了,但是感觉这东西使用起来有点绕,特此梳…...
如何在Linux下安装和配置Docker
文章目录 安装前的准备在Debian/Ubuntu上安装Docker添加Docker仓库安装Docker验证安装 在CentOS/RHEL上安装Docker安装必要的软件包设置Docker仓库安装Docker启动Docker服务 Docker的基本使用拉取一个镜像运行一个容器 配置Docker创建Docker目录使用非root用户运行Docker 结语 …...
apisix的原理及作用,跟spring cloud gateway有什么区别?
apache APISIX 是一个高性能、可扩展的开源 API 网关,它主要用于处理 API 请求、流量管理、安全控制和服务治理。APISIX 可以将复杂的服务架构中的不同服务通过统一的网关来进行管理和监控,为微服务架构提供了便捷的流量入口管理方式。 APISIX 的原理 …...
华为HarmonyOS实现实时语音识别转文本
场景介绍 将一段音频信息(短语音模式不超过60s,长语音模式不超过8h)转换为文本,音频信息可以为pcm音频文件或者实时语音。 开发步骤 在使用语音识别时,将实现语音识别相关的类添加至工程。 import { speechRecogni…...
DIY可视化-uniapp悬浮菜单支持拖动、吸附-代码生成器
在Uniapp中,悬浮菜单支持拖动和吸附功能,可以为用户带来更加灵活和便捷的操作体验。以下是对这两个功能的详细解释: 悬浮菜单支持拖动 提高用户体验:用户可以根据自己的需要,将悬浮菜单拖动到屏幕上的任意位置&#x…...
HTTP cookie 与 session
一.Cookie 定义: 是服务器发送到用户浏览器并保存在浏览器上的一小块数据, 它会在浏览器之后向同一服务器再次发起请求时被携带并发送到服务器上。 通常, 它用于告知服务端两个请求是否来自同一浏览器, 如保持用户的登录状态、 …...
智慧停车场导航系统架构及反向寻车系统解决方案
一、系统概述: 随着当前室内定位导航技术在大型公共场所如政务中心、商业综合体、车站中的应用越来越多,人们对智慧停车场的需求也日益凸显出来,并且智慧停车场对大型公共场所智慧化的整体建设起到重要作用。如何更有效提高停车效率…...
【小程序上传图片封装2024,支持多图,带进度,上传头像】
import config from ./config;// 支持多图,显示进度 export function uploadImages(count 1, sourceType, onLoading null, showProgress false, fileKey file) {return new Promise((resolve, reject) > {wx.chooseMedia({count: count, // 可以选择的图片数…...
[A-14]ARMv8/ARMv9-Memory-内存模型的类型(Device Normal)
ver0.1 [看前序文章有惊喜。] 前言 前面花了很大的精力把ARM构建的VMSA中的几个核心的议题给大家做了介绍,相信大家已经能够理解并掌握ARM的内存子系统的工作原理大致框架。接下来我们会规划一些文章,对ARM内存子系统的一些细节做一下介绍,使ARM的内存子系统更加的丰满。本…...
驾校管理系统|基于java和小程序的驾校管理系统设计与实现(源码+数据库+文档)
驾校管理系统平台 目录 基于java和小程序的驾校管理系统设计与实现 一、前言 二、系统设计 三、系统功能设计 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取: 博主介绍:✌️大厂码农|毕设布道师&#…...
@Mapper使用中遇到的问题解法汇总
最近终于有时间写点代码相关的文章了,工作真的太忙了,果然又要测试又要开发的人最🐂🐴。 1.查询数据库有数据,但是代码中写select语句的时候查出为null Select("SELECT * FROM xx_manager order by id limit 1&q…...
深度学习:YOLO V3 网络架构解析
引言 YOLO V3(You Only Look Once Version 3)是YOLO系列算法的第三个版本,相比之前的版本,它在多个方面进行了优化和改进,不仅提升了检测精度,还保持了较快的检测速度。本文将详细介绍YOLO V3的主要改进以…...
SpringCloudAlibaba-Sentinel-熔断与限流
版本说明 <spring.boot.version>3.2.0</spring.boot.version> <spring.cloud.version>2023.0.0</spring.cloud.version> <spring.cloud.alibaba.version>2023.0.1.2</spring.cloud.alibaba.version>是什么 能干嘛 面试题 服务雪崩 安装使…...
mysql中的mvcc理解
是什么:MVCC指的是在读已提交、可重复读这两种隔离级别下的事务在执行普通的select操作时,访问记录的版本链的过程,可以使不同事务的读写操作并发执行,提高性能。 MVCC 隐藏字段 undo log 版本链 ReadView 1.隐藏字段…...
ETF申购赎回指南:详解注意事项与低费率券商推荐!
ETF 申购&赎回 ETF申购赎回是个啥业务? 01 ETF申购、赎回是一种交易委托方式,指投资者通过申购方式(买入方向)获得ETF份额,通过赎回的方式(卖出方向)换掉/卖出ETF份额。ETF申购,通常是通过一篮子成…...
List<T>属性和方法使用
//author:shark_ddd using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;//使用函数来减少长度namespace List_T {class Student{public string Name { get; set; }public int Age { get; set; …...
记一次:使用使用Dbeaver连接Clickhouse
前言:使用了navicat连接了clickhouse我感觉不太好用,就整理了一下dbeaver连接 0、使用Navicat连接clickhouse 测试连接 但是不能双击打开,可是使用命令页界面,右键命令页界面,然后可以用sql去测试 但是不太好用&#…...
Java面向对象编程进阶(四)
Java面向对象编程进阶(四) 一、equals()方法的使用二、toString()方法的使用三、复习 一、equals()方法的使用 适用性:任何引用数据都可以使用。 自定义的类在没有重写Object中equals()方法的情况下,调用的就是Object类中声明的…...
【51单片机】第一个小程序 —— 点亮LED灯
学习使用的开发板:STC89C52RC/LE52RC 编程软件:Keil5 烧录软件:stc-isp 开发板实图: 文章目录 单片机介绍LED灯介绍练习创建第一个项目点亮LED灯LED周期闪烁 单片机介绍 单片机,英文Micro Controller Unit࿰…...
做网站开发需要学那些东西/武汉外包seo公司
2019独角兽企业重金招聘Python工程师标准>>> 以下性能测试方案和流程是根据我以前公司的情况整理的,仅供参考,若大家有好的建议,那可以给我留言,谢谢! 当时我把此方案和流程发邮件给相关领导,就…...
大连手机自适应网站建设报价/如何在各大平台推广
前言 这一部分有三篇文章,主要是讲解go调度器的一些内容 三篇文章分别是: 理解golang调度之一 :操作系统调度理解golang调度之二 :Go调度器理解golang调度之三:并发简介 当我在解决一个问题尤其是新问题的时候,我开始不…...
开发动态网站有哪些技术/必应搜索网站
while 1:try:t = input()p = input()if p in t:_ = t.split(p)print(len(_[...
没有网站可以做备案吗/网络营销推广的手段
你是一名行政助理,手里有两位客户的空闲时间表:slots1 和 slots2,以及会议的预计持续时间 duration,请你为他们安排合适的会议时间。 「会议时间」是两位客户都有空参加,并且持续时间能够满足预计时间 duration 的 最…...
个人做网站设计/北京网站优化排名推广
设置注释模板的步骤:点击菜单栏上的Window -->Preferences-->Java-->Code Style -->Code Templates,对右侧Comments选项中具体的注释信息进行编辑即可。可勾选上自动添加注释信息,在生成java文件时便会自动生成注释,当…...
怎么查网站在哪备案/seo查询seo
时隔两年的修改: 问题分析:安装了python,Pycharm还找不到Python解释器,原因是系统环境变量中没有指出Python.exe的位置。 解决办法:找到你安装的Python.exe所在的位置,将其添加至系统环境变量就好了。怎么添…...