无法使用 spring 和生菜连接到 redis

问题描述

我正在努力寻找可能在这里发生的事情;需要帮忙。 我正在使用 spring-data-redis 2.4.1

RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration()
redisStandaloneConfiguration.setHostname(hostname)
redisStandaloneConfiguration.setPort(6379)
redisStandaloneConfiguration.setPassword("password")

然后我创建 lettuceClientConfigurationBuilder 并指定 clientName

然后我使用 lettuceClientConfigurationredisStandaloneConfiguration 创建 ClientConnectionFactory

然而,当我们在连接工厂调用 getConnection() 时,我们得到

WrongPass Invalid username-password pair

同一组用户名-密码在 cmd 提示符下与 Redis-CLI 一起使用。

我在 Java 应用程序中的使用方式有问题吗?

任何解决此问题的指针/提示将不胜感激。

解决方法

Spring Boot 为您配置了 LettuceConnectionFactory,您可以在 application.properties 文件中指定连接参数。

spring.redis.database=0
spring.redis.host=localhost
spring.redis.port=6379
spring.redis.password=yourPassword
spring.redis.timeout=60000

如果您想以编程方式执行此操作,请在 application.properties 中设置 spring.redis.password 并尝试以下操作:

@Configuration
class AppConfig {

  @Bean
  public LettuceConnectionFactory redisConnectionFactory() {

    return new LettuceConnectionFactory(new RedisStandaloneConfiguration("server",6379));
  }
}