SpringBoot进阶-Redis数据类型及应用场景(二)
2023-09-11 14:16:57 时间
key的操作
返回匹配的所有key
可统计在线用户数量(大数据量下慎用),redis命令:
keys user:*
java实现:
//获取所有匹配的key
Set<String> keys = redisTemplate.keys("user:*");
keys.stream().forEach(System.out::println);
设置过期时间
给k1设置10秒的过期时间(PS:后面的代码格式都是redis命令再对应java实现)
expire k1 10
//设置过期时间,如果key已过期或不存在则返回false
boolean result = redisTemplate.expire("k1", Duration.ofSeconds(10));
查看过期时间
返回过期秒数,-1表示永不过期,-2表示已过期
ttl k1
//获取过期时间,第二个参数指定时间格式,-1表示永不过期,-2表示已过期
long expire = redisTemplate.getExpire("k1", TimeUnit.SECONDS);
查看保存的数据类型
type k1
//查看对应key保存的数据类型
DataType dataType = redisTemplate.type("k1");
删除key
del k1
redisTemplate.delete("k1");
String操作
一些简单操作就省略了,看些小复杂并且常用的
设置值加过期时间
参数1:key,参数2:过期时间(秒),参数3:value
setex k1 60 v1
redisTemplate.opsForValue().set("k1", "v1", Duration.ofSeconds(60));
不存在则设置值
setnx是set if not exist简写,如果不存在,则 SET
setnx k1 v2
//不存在就设置,返回值为true表示设置成功
boolean result = redisTemplate.opsForValue().setIfAbsent("k1", "v2");
计数
每次执行加1
incr personCount
//加1,第一个执行返回1
long count = redisTemplate.opsForValue().increment("personCount");
应用场景
1.计数器,incr,decr命令可用于点赞,收藏等数据计数
2.setnx可用于分布式锁
3.存储json对象
相关文章
- Linux下安装redis
- SpringBoot使用Redis共享用户session信息
- SessionStateMode之Redis共享session
- SpringBoot ( 七 ) :springboot + mybatis 多数据源最简解决方案
- springboot整合redis
- Redis的介绍
- Redis实战 内存淘汰机制
- Redis学习(8)-redis其他特性
- 一步完成 MySQL 向 Redis 迁移
- redis取值报错
- rabbitmq和redis用作消息队列的区别
- Redis集群客户端扩展
- Redis---整合SpringBoot篇
- Atitit mysql redis mongodb 性能指标 目录 1.1. 二、 性能比较1 1.2. 性能极高- Redis能读的速度是110000次/s,写的速度是81000次/s2 1
- 【SpringBoot笔记22】SpringBoot框架集成Redis数据库
- 〖Python 数据库开发实战 - Python与Redis交互篇①〗- redis-py的安装与使用
- 〖Python 数据库开发实战 - Python与Redis交互篇⑥〗- redis-py 的事务函数
- 〖Python 数据库开发实战 - Python与Redis交互篇⑫〗- 综合案例 - 新闻管理系统 - 删除新闻(含redis缓存)
- SpringBoot升级到2.0后默认时间格式变化_springboot接收date类型参数
- Redis的那些事儿:关系型和非关系型数据库,非关系型数据库的类型,redis数据类型、编码格式、高性能、可以做什么、分布式锁失效的原因,string为采用sds数据类型,为什么是二进制安全的,
- 008-spring cache-缓存实现-03-springboot redis单机测试、lettuce链接池集群配置、jedis连接池集群配置
- Redis 漏斗限流 (redis-cell)
- 几分钟搞定redis存储session共享——设计实现
- redis分布式锁在springboot中的实现
- C/C++编程操作Redis数据库,hiredis包装redis数据库操作接口及测试(增删改查与连接)
- 【服务器安装Redis】Centos7离线安装redis
- Redis_21_RedisCluster集群版搭建和SpringBoot的使用(实践开发类)
- Redis_02_Redis单机版搭建和SpringBoot的使用(实践开发类)