【发布时间】:2016-03-16 01:03:16
【问题描述】:
我让 Spring Redis 使用 spring-data-redis 和所有默认配置(如 localhost 默认 port 等)工作。
现在我正在尝试通过在application.properties 文件中进行配置来进行相同的配置。但我无法弄清楚我应该如何创建完全读取我的属性值的 bean。
Redis 配置文件
@EnableRedisHttpSession
@Configuration
public class SpringSessionRedisConfiguration {
@Bean
JedisConnectionFactory connectionFactory() {
return new JedisConnectionFactory();
}
@Autowired
@Bean
RedisCacheManager redisCacheManager(final StringRedisTemplate stringRedisTemplate) {
return new RedisCacheManager(stringRedisTemplate);
}
@Autowired
@Bean
StringRedisTemplate template(final RedisConnectionFactory connectionFactory) {
return new StringRedisTemplate(connectionFactory);
}
}
application.properties 中的标准参数
spring.redis.sentinel.master=themaster
spring.redis.sentinel.nodes=192.168.188.231:26379
spring.redis.password=12345
我试过了,
- 我可以使用
@PropertySource然后注入@Value并获取值。但我不想这样做,因为这些属性不是我定义的,而是来自 Spring。 - 在本文档Spring Redis Documentation 中,它只说可以使用属性进行配置,但没有显示具体示例。
- 我还浏览了 Spring Data Redis API 类,发现
RedisProperties应该可以帮助我,但仍然无法弄清楚如何告诉 Spring 从属性文件中读取。
【问题讨论】:
-
目前正在使用
@Value注解,有更好的建议
标签: java spring configuration redis