Spring Boot 整合 Redis

基本操作

  1. 引入依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

自 Spring Boot 2.0 以后,Redis Client 默认实现由 Jedis 变为 lettuce。

关于两者之间的比较可以参考:Jedis vs. Lettuce: An Exploration

  1. 配置参数

spring:
  redis:
    host: redis.local
    port: 6379
    database: 0
  1. Redis Bean 参考

@Bean
@ConditionalOnMissingBean(
    name = {"redisTemplate"}
)
@ConditionalOnSingleCandidate(RedisConnectionFactory.class)
public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
    RedisTemplate<Object, Object> template = new RedisTemplate();
    template.setConnectionFactory(redisConnectionFactory);
    return template;
}

@Bean
@ConditionalOnMissingBean
@ConditionalOnSingleCandidate(RedisConnectionFactory.class)
public StringRedisTemplate stringRedisTemplate(RedisConnectionFactory redisConnectionFactory) {
    return new StringRedisTemplate(redisConnectionFactory);
}
  1. 使用测试

存储对象

配置对象解析

  1. 使用 JDK 序列化

  1. 在 RedisTemplate 中设置序列化方式

当然也可以使用 Spring 提供的通用序列化工具

绝大多数的情况下我们在 Java 中使用 Redis 方法时都会有成熟的工具类,并不会直接去使用 RedisTemplate 等工具,工具类的方法在各类博客都有详述,就不再赘述。

最后更新于

这有帮助吗?