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.

相关推荐
我不会起名字3228 小时前
Redis 从 0 到 1(三十三):机器断电 Redis 起不来——AOF/RDB 损坏的 4 步抢救流程
redis·数据恢复·aof·rdb·排查
csdn_aspnet11 小时前
Redis 入门:Windows、Mac安装指南
数据库·windows·redis·缓存·mac
IT规划师12 小时前
Redis 数据类型全解 - HyperLogLog:12 KB 估出亿级 UV(八)
redis·uv·hyperloglog·.net10
aiks_yuan1 天前
Token 放 Redis 还是用 JWT:Java 实测验签和查 Redis 耗时,退出登录、改密码踢下线怎么做(jjwt 0.12 + Redis 7.2)
redis
露天赏雪1 天前
第3篇:Sentinel熔断降级实战:大模型接口抖动时的服务兜底方案
java·开发语言·人工智能·spring boot·spring·servlet·sentinel
captain3761 天前
▲统一功能——DispatcherServlet源码分析
java·spring·java-ee·log4j·maven
我不会起名字3221 天前
Redis 从 0 到 1(二十九):CPU 突然 100%——commandstats 定位法与 6 步排查链路
redis·cpu·慢查询·排查·commandstats
我不会起名字3221 天前
Redis 从 0 到 1(二十八):Redis 抖一下,重试把它打挂了——超时/重试/熔断的 Go 封装
redis·go·超时·熔断·重试
我不会起名字3222 天前
Redis 从 0 到 1(三十):删了一半数据 RSS 不降——内存碎片与 activedefrag 观测
redis·内存碎片·rss·排查·activedefrag