怎么在springboot 启动时把redis集群的 host:port password 打印出来
时间: 2023-06-11 15:09:12 浏览: 55
可以使用 Spring Boot 的 `ApplicationRunner` 接口来实现在应用启动时打印 Redis 集群的配置信息。
首先,在 `application.properties` 配置文件中添加 Redis 集群的配置信息:
```
spring.redis.cluster.nodes=host1:port1,host2:port2,host3:port3
spring.redis.password=password
```
然后创建一个实现 `ApplicationRunner` 接口的类,代码如下:
```java
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisClusterConfiguration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
@Configuration
public class RedisClusterConfigPrinter implements ApplicationRunner {
@Autowired
private RedisConnectionFactory redisConnectionFactory;
@Override
public void run(ApplicationArguments args) throws Exception {
RedisClusterConfiguration redisClusterConfiguration =
(RedisClusterConfiguration) redisConnectionFactory.getClusterConfiguration();
System.out.println("Redis cluster nodes: " + redisClusterConfiguration.getClusterNodes());
System.out.println("Redis password: " + redisClusterConfiguration.getPassword());
}
}
```
在 `run()` 方法中,我们先从 `redisConnectionFactory` 中获取 Redis 集群的配置信息,然后使用 `getClusterNodes()` 方法获取所有节点的地址和端口号,使用 `getPassword()` 方法获取 Redis 的密码。
最后,在启动应用时,你就可以看到打印出的 Redis 集群的配置信息了。