【问题标题】:Java JobRunr when using Spring Boot Redis Starter使用 Spring Boot Redis Starter 时的 Java JobRunr
【发布时间】:2022-08-21 18:28:32
【问题描述】:

如何创建和使用 spring-boot-starter-data-redis 创建的 Redis 连接?似乎没有由默认自动配置创建的RedisClient 的 Bean,所以我不确定执行此操作的最佳方法。

文档确实指出,在这种情况下,您需要自己创建StorageProvider,这很好,但是您可以重用 Spring Boot 已经创建的内容。我相信这需要一个池连接,您还需要通过 Spring Boot 启用它。

    标签: spring-boot jobrunr


    【解决方案1】:

    RedisTemplate 为 Redis 交互提供了高级抽象:

    https://docs.spring.io/spring-data/data-redis/docs/current/reference/html/#redis:template

    Redis 自动配置:

        @AutoConfiguration
    @ConditionalOnClass({RedisOperations.class})
    @EnableConfigurationProperties({RedisProperties.class})
    @Import({LettuceConnectionConfiguration.class, JedisConnectionConfiguration.class})
    public class RedisAutoConfiguration {
        public RedisAutoConfiguration() {
        }
    
        @Bean
        @ConditionalOnMissingBean(
            name = {"redisTemplate"}
        )
        @ConditionalOnSingleCandidate(RedisConnectionFactory.class)
        public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
            RedisTemplate<Object, Object> template = new RedisTemplate();
            template.setConnectionFactory(redisConnectionFactory);
            return template;
        }
    
        @Bean
        @ConditionalOnMissingBean
        @ConditionalOnSingleCandidate(RedisConnectionFactory.class)
        public StringRedisTemplate stringRedisTemplate(RedisConnectionFactory redisConnectionFactory) {
            return new StringRedisTemplate(redisConnectionFactory);
        }
    }
    

    Here可以找到对应的配置属性(包括连接池默认配置)。

    简单的实现示例: https://www.baeldung.com/spring-data-redis-tutorial

    【讨论】:

      猜你喜欢
      • 2022-12-28
      • 1970-01-01
      • 2019-10-28
      • 2014-04-07
      • 2016-01-29
      • 1970-01-01
      • 1970-01-01
      • 2021-06-01
      • 2015-07-07
      相关资源
      最近更新 更多