Spring Data Redis常见操作总结

我列出来的都是最常用的,其他的你要自己去搜搜

1. 列表类型数据

java 复制代码
@Autowired
private RedisTemplate<String ,Object> redisTemplate;

public void f1() {
        String k = "key";
        ListOperations<String, Object> list = redisTemplate.opsForList();
        redisTemplate.expire(k, 2, TimeUnit.HOURS);//设置过期时间
        list.rightPush(k,"a");//在尾部插入
        list.leftPush(k,"c");//在头部插入
        List<Object> range = list.range(k, 0, -1);//获取指定范围的列表,在这里获取全部
        System.out.println(range);//输出:[c, a]

        list.set(k,0,"new");//设置列表指定索引的值
        list.set(k,1,"old");
        List<Object> range2 = list.range(k, 0, -1);
        System.out.println(range2);//输出:[new, old]
}

2. 字符串类型数据

java 复制代码
@Autowired
private RedisTemplate<String ,Object> redisTemplate;

@org.junit.jupiter.api.Test
public void f1() {
        String k = "ts";
        ValueOperations<String, Object> operations = redisTemplate.opsForValue();
        redisTemplate.expire(k, 2, TimeUnit.HOURS);
        operations.set(k,"09000");
        System.out.println(operations.get(k));//09000
}

3. 有序集合类型数据

java 复制代码
@Autowired
private RedisTemplate<String ,Object> redisTemplate;

@org.junit.jupiter.api.Test
public void f1() {
        String k = "dc";
        SetOperations<String, Object> set = redisTemplate.opsForSet();
        redisTemplate.expire(k, 2, TimeUnit.HOURS);
        set.add(k,"a");
        set.add(k,"b");
        set.add(k,"c");
        System.out.println(set.members(k));//获取集合的所有元素,输出:[a, b, c]
}
相关推荐
大模型玩家七七4 小时前
基于语义切分 vs 基于结构切分的实际差异
java·开发语言·数据库·安全·batch
Coder_Boy_5 小时前
技术发展的核心规律是「加法打底,减法优化,重构平衡」
人工智能·spring boot·spring·重构
寻星探路9 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
陌上丨11 小时前
Redis的Key和Value的设计原则有哪些?
数据库·redis·缓存
曹牧11 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
爬山算法12 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
kfyty72512 小时前
集成 spring-ai 2.x 实践中遇到的一些问题及解决方案
java·人工智能·spring-ai
猫头虎12 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
李少兄12 小时前
在 IntelliJ IDEA 中修改 Git 远程仓库地址
java·git·intellij-idea