JedisConnectionFactory setHostName 已弃用
JedisConnectionFactory setHostName is deprecated
这将是我第一次 Spring 连接到 Redis。 jedis 连接工厂的文档:http://www.baeldung.com/spring-data-redis-tutorial
提供以下代码:
@Bean
JedisConnectionFactory jedisConnectionFactory() {
JedisConnectionFactory jedisConFactory
= new JedisConnectionFactory();
jedisConFactory.setHostName("localhost");
jedisConFactory.setPort(6379);
return jedisConFactory;
}
看起来不错,但我的 IDE 告诉我 setHostName 和 setPort 方法已被弃用(即使我使用的是教程中的版本)。
我想知道是否有人有使用未弃用的 API 调用的简单 "get spring data connected to redis" 示例?
在 Spring Data Redis 2.0 中,这些方法已被弃用。
您现在需要使用 RedisStandaloneConfiguration
进行配置
示例:
JedisConnectionFactory jedisConnectionFactory() {
RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration("localhost", 6379);
redisStandaloneConfiguration.setPassword(RedisPassword.of("yourRedisPasswordIfAny"));
return new JedisConnectionFactory(redisStandaloneConfiguration);
}
@Bean
JedisConnectionFactory jedisConnectionFactory() {
RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration();
redisStandaloneConfiguration.setHostName("localhost");
redisStandaloneConfiguration.setPort(6379);
redisStandaloneConfiguration.setDatabase(0);
redisStandaloneConfiguration.setPassword(RedisPassword.of("password"));
JedisClientConfigurationBuilder jedisClientConfiguration = JedisClientConfiguration.builder();
jedisClientConfiguration.connectTimeout(Duration.ofSeconds(60));// 60s connection timeout
JedisConnectionFactory jedisConFactory = new JedisConnectionFactory(redisStandaloneConfiguration,
jedisClientConfiguration.build());
return jedisConFactory;
}
加上@Thang Le 的回复
您可以配置读取操作超时,添加此行:
jedisClientConfigurationBuilder.readTimeout(Duration.ofSeconds(1));
这是你使用时可以获得的值:
jedisConFactory.getTimeout()
这将是我第一次 Spring 连接到 Redis。 jedis 连接工厂的文档:http://www.baeldung.com/spring-data-redis-tutorial
提供以下代码:
@Bean
JedisConnectionFactory jedisConnectionFactory() {
JedisConnectionFactory jedisConFactory
= new JedisConnectionFactory();
jedisConFactory.setHostName("localhost");
jedisConFactory.setPort(6379);
return jedisConFactory;
}
看起来不错,但我的 IDE 告诉我 setHostName 和 setPort 方法已被弃用(即使我使用的是教程中的版本)。
我想知道是否有人有使用未弃用的 API 调用的简单 "get spring data connected to redis" 示例?
在 Spring Data Redis 2.0 中,这些方法已被弃用。 您现在需要使用 RedisStandaloneConfiguration
进行配置示例:
JedisConnectionFactory jedisConnectionFactory() {
RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration("localhost", 6379);
redisStandaloneConfiguration.setPassword(RedisPassword.of("yourRedisPasswordIfAny"));
return new JedisConnectionFactory(redisStandaloneConfiguration);
}
@Bean
JedisConnectionFactory jedisConnectionFactory() {
RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration();
redisStandaloneConfiguration.setHostName("localhost");
redisStandaloneConfiguration.setPort(6379);
redisStandaloneConfiguration.setDatabase(0);
redisStandaloneConfiguration.setPassword(RedisPassword.of("password"));
JedisClientConfigurationBuilder jedisClientConfiguration = JedisClientConfiguration.builder();
jedisClientConfiguration.connectTimeout(Duration.ofSeconds(60));// 60s connection timeout
JedisConnectionFactory jedisConFactory = new JedisConnectionFactory(redisStandaloneConfiguration,
jedisClientConfiguration.build());
return jedisConFactory;
}
加上@Thang Le 的回复
您可以配置读取操作超时,添加此行:
jedisClientConfigurationBuilder.readTimeout(Duration.ofSeconds(1));
这是你使用时可以获得的值:
jedisConFactory.getTimeout()