Spring Data Redis简单使用

Spring Data Redis是一个用于简化应用程序与Redis交互的开发框架。它提供了简单的配置和方便的操作API,使得与Redis的集成变得更加容易。下面是一个快速入门使用Spring Data Redis的步骤:

步骤 1:添加依赖

在您的项目中添加Spring Data Redis的依赖。可以在Maven项目中的pom.xml文件中添加以下依赖关系:

XML 复制代码
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-pool2</artifactId>
        </dependency>

步骤 2:配置Redis连接

在项目的配置文件中,配置Redis的连接信息。application.yml文件配置。

XML 复制代码
spring:
  data:
    redis:
      host: 127.0.0.1
      port: 6379
      database: 2
        # 连接超时
      connect-timeout: 5s
        # 读超时
      timeout: 5s

        # Lettuce 客户端的配置
      lettuce:
          # 连接池配置
          pool:
            # 最小空闲连接
            min-idle: 0
            # 最大空闲连接
            max-idle: 8
            # 最大活跃连接
            max-active: 8
            # 从连接池获取连接 最大超时时间,小于等于0则表示不会超时
            max-wait: -1ms

步骤 3:测试类里测试

java 复制代码
@SpringBootTest
class RedisApplicationTests {

    static final Logger logger = LoggerFactory.getLogger(RedisApplicationTests.class);
    // 注入 RedisTemplate
    @Autowired
    RedisTemplate RedisTemplate;

    @Test
    public void test() {
        // Map
        Map<String, Object> map = new HashMap<>();
        map.put("title", "spring-data-redis");
        map.put("url", "https://spring.io/projects/spring-data-redis");
        map.put("createAt", LocalDateTime.now());

        // 设置 key/value
        RedisTemplate.opsForValue().set("key1-string", map, Duration.ofMinutes(5));
        // 读取 key/value
        map = (Map<String, Object>) RedisTemplate.opsForValue().get("key1-string");
        logger.info("map={}", map);

        // 设置 Hash Value
        RedisTemplate.opsForHash().put("key2-hash", "app", map);
        // 读取 Hash Value
        map = (Map<String, Object>) RedisTemplate.opsForHash().get("key2-hash", "app");

        logger.info("map={}", map);
    }

}

redis面试题:

经典20道面试题

链接:

ZSET 的经典使用场景是用来实现排行榜

链接: 【Redis面试题】如何使用Redis实现微信步数排行榜? - 知乎.

Redis主从复制原理总结

链接: https://www.cnblogs.com/daofaziran/p/10978628.html.

Redis是单线程的为什么速度还这么快?

链接: https://www.cnblogs.com/fengli9998/p/12092375.html.

Redis集群选举机制

链接: redis集群选举机制-CSDN博客.

Redisson实现Redis分布式锁的原理

链接: https://www.cnblogs.com/AnXinliang/p/10019389.html.

相关推荐
草莓熊Lotso4 分钟前
【C++ 基于微服务的即时通讯系统】etcd + brpc 从安装到服务注册发现全链路实战
网络·数据库·c++·redis·微服务·etcd
猿究院_夏燊5 小时前
Spring Bean 生命周期
java·后端·spring
流烟默6 小时前
MCP第 5 篇:用 Spring AI 写 MCP:注解、自动配置、ChatClient 集成
人工智能·spring·mcp封装
我不会起名字3227 小时前
Redis 突然只能读不能写:MISCONF 报错的 3 类触发条件与 4 步恢复
运维·redis·持久化·排查·misconf
我不会起名字3228 小时前
Redis 从 0 到 1(九):主库宕机 30 秒自动切主——1 主 2 从 3 哨兵 + Go 客户端
redis·docker·sentinel·高可用·哨兵
来福猿8 小时前
SpringCloud Config 源码分析:配置拉取、刷新与多环境管理
后端·spring·spring cloud
雷一言说12 小时前
Spring AI 2.0 RAG:用 Metadata Filter 做多租户检索隔离
java·spring
摇滚侠12 小时前
《大模型应用开发实践:基于 Spring AI+DeepSeek 实现》第 11 章 大模型技术概览 阅读笔记 1
人工智能·笔记·spring
毕业设计70315 小时前
(免费领源码)SSM董家湾线上点餐系统04682- java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
java·redis·mysql·tomcat·maven·mybatis·ssm
用户0942485680317 小时前
第1章:Redis 术语全景与单线程工作原理
redis·快应用·源码阅读