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.

相关推荐
Java成神之路-7 小时前
Spring Cloud 微服务契约先行:为什么 Controller 建议要实现 Feign 接口?
spring·spring cloud·微服务
Flittly10 小时前
【雕虫大技】Agent 动态 Skill 供应链安全加固(三):输出校验与治理闭环实战
java·spring boot·spring
风流 少年11 小时前
Spring AI 2.0:MCP
java·后端·spring
天疆说11 小时前
01 硬件选型与 llama.cpp 部署:4× RTX 5880 Ada 跑 DeepSeek-V4-Flash
java·redis·llama
风流 少年12 小时前
Spring AI 2.0:Tool
java·python·spring
嘟嘟071712 小时前
Next.js 博客左侧笔记列表是怎么从 Redis 渲染出来的?从组件、children 到动态路由一次讲清
redis·react.js·前端工程化
爱敲键盘的猴子13 小时前
Java Spring -- 声明式事务控制
java·spring·事务控制
Rain的Java大神之路15 小时前
线上接口负载满了如何解决
java·数据库·redis·后端·缓存·面试·架构
Amir_zy17 小时前
Redis测试方法全攻略:冒烟、压测与稳定性验证
redis·压力测试
霸道流氓气质18 小时前
RedLock:Redis 分布式锁的高可用方案
数据库·redis·分布式