桐小目 2018-02-22 03:58 采纳率: 40%
浏览 5554
已采纳

Spring Boot 使用Redis缓存 配置问题

背景

我想要在当前的Spring Boot项目中使用Redis作为缓存。目前所了解到的内容是Redis缓存有两种实现方式,一种是使用Spring Cache注解,需要加一个配置文件,另一种是使用RedisTemplate,想要两种方式混合使用。

相关版本

Spring Boot:Spring Boot 2.0.0.M7

Redis依赖包:

 <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>

主要问题:

application中yml文件我按照书上和官方文档的推荐方式在Application.yml里面做了如下配置,因为我使用的Spring Boot版本比较新,因为配置方式与之前的稍微有点不一样:

 spring:
  redis:
      host: 127.0.0.1
      port: 6379
      password: 123456
      #timeout: 0
      #Spring Boot 2.0.0.M7中原有的redis配置方法过时,加了一层jedis
      jedis:
        pool:
          max-active: 8
          max-wait: -1
          min-idle: 8
          max-idle: 0

而为了使用Spring Cache注解,需要启用注解并且设置数据在Redis数据库的有效期限,需要如下配置:
图片说明
无论是我看的书籍还是查阅的很多博客都是这种配置方式,但是如图报错了。我猜想很大可能是版本原因,因此去查看了Spring提供的官方文档(2.0.0.M1的文档,是最新的文档):
https://docs.spring.io/spring-data/redis/docs/2.1.0.M1/api/
里面的RedisCacheManager的构造方法显然没有上面图片中的那种,文档所提供的的构造方法我有看不太懂应该怎么获取或者使用。
因为第一次配置我了解的相关知识也比较少,希望有大神能够指导一下在这里具体应该怎么配置Redis数据的过期时间?
感谢阅读问题~

  • 写回答

4条回答 默认 最新

  • little_strong13 2018-02-22 08:54
    关注

    配置redis数据过期时间简单,不需要在配置文件中配置,你可以在调用service存储数据时使用redis的setex方法,当中第二个参数是表示过期的,单位是秒

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥50 深度学习运行代码直接中断
  • ¥15 关于#单片机#的问题,请各位专家解答!
  • ¥15 关于#单片机#的问题,请各位专家解答!
  • ¥20 需要完整的共散射点成像代码
  • ¥15 编写vba代码实现数据录入工作
  • ¥15 做过TCL海信电视小米电视相关影视会员软件私我
  • ¥15 Mapreduce是正常的,在运行其他jar包时并没有任何问题,只是在做LogCount.jar 时出的问题。如图所示
  • ¥15 ImportError: DLL load failed while importing _iterative: 找不到指定的模块。
  • ¥15 如何通过交互分析得出某高危患者对放疗获益更多
  • ¥15 相关性分析中,p<0.05, r=0.29,怎么评价相关性呢