redisTemplate.opsForHash() Cluster is not configured!
时间: 2024-03-27 11:07:08 浏览: 60
`redisTemplate.opsForHash()` 方法需要在 RedisTemplate 中配置集群模式才能使用。报错信息 "Cluster is not configured!" 意味着 RedisTemplate 没有配置为集群模式。
要在 RedisTemplate 中配置集群模式,你需要使用 `LettuceConnectionFactory` 作为连接工厂,并配置适当的 Redis 集群信息。
以下是一个示例配置:
```java
@Configuration
public class RedisConfig {
@Bean
public RedisConnectionFactory redisConnectionFactory() {
RedisClusterConfiguration clusterConfiguration = new RedisClusterConfiguration();
clusterConfiguration.addClusterNode(new RedisNode("host1", 6379));
clusterConfiguration.addClusterNode(new RedisNode("host2", 6379));
// 添加更多的 Redis 节点...
return new LettuceConnectionFactory(clusterConfiguration);
}
@Bean
public RedisTemplate<String, Object> redisTemplate() {
RedisTemplate<String, Object> template = new RedisTemplate<>();
template.setConnectionFactory(redisConnectionFactory());
// 配置序列化器等其他选项...
return template;
}
}
```
请根据你的实际情况修改上述示例中的 Redis 集群节点信息,并根据需要进行其他配置。确保在调用 `redisTemplate.opsForHash()` 方法之前,已正确配置了 RedisTemplate 的集群模式。
阅读全文