桐小目 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条)

报告相同问题?

悬赏问题

  • ¥15 串口通信传输字符的质量控制
  • ¥50 xslt如何让block撑满页面
  • ¥15 vs的显示无法启动IIS Express Web服务器,怎么解决?
  • ¥20 一个python博客项目的相关图例
  • ¥15 轮廓提取也提取不到,有没有别的方法,如何解决?
  • ¥50 Js和c++如何将含有图片的excel文件上传到后台服务器
  • ¥15 光电神经网络,FPGA
  • ¥20 通过防火墙出入站阻止游戏程序联网失效
  • ¥15 鼠标是可以在QT界面上移动的,但是热拔插鼠标无法移动了同时板子上是没问题的,如何解决?
  • ¥15 iframe嵌套显示问题