package com.vincent.rsf.openApi.config;
|
|
import org.springframework.beans.factory.annotation.Qualifier;
|
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Configuration;
|
import org.springframework.data.redis.connection.RedisStandaloneConfiguration;
|
import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory;
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
/**
|
* 电视机后台使用独立 Redis DB 时,此处与 {@code tv-monitor.redis.database} 对齐(默认 0,与 zy-monitor-admin 一致)
|
*/
|
@Configuration
|
public class TvMonitorRedisConfig {
|
|
@Value("${redis.host:127.0.0.1}")
|
private String host;
|
@Value("${redis.port:6379}")
|
private int port;
|
@Value("${redis.password:}")
|
private String password;
|
@Value("${tv-monitor.redis.database:0}")
|
private int database;
|
|
@Bean(name = "tvMonitorRedisConnectionFactory")
|
public LettuceConnectionFactory tvMonitorRedisConnectionFactory() {
|
RedisStandaloneConfiguration cfg = new RedisStandaloneConfiguration(host, port);
|
cfg.setDatabase(database);
|
if (password != null && !password.isEmpty()) {
|
cfg.setPassword(password);
|
}
|
return new LettuceConnectionFactory(cfg);
|
}
|
|
@Bean(name = "tvMonitorStringRedisTemplate")
|
public StringRedisTemplate tvMonitorStringRedisTemplate(
|
@Qualifier("tvMonitorRedisConnectionFactory") LettuceConnectionFactory tvMonitorRedisConnectionFactory) {
|
StringRedisTemplate t = new StringRedisTemplate();
|
t.setConnectionFactory(tvMonitorRedisConnectionFactory);
|
return t;
|
}
|
}
|