# 依赖

spring-boot-starter-data-redis

# 配置

spring:
    data:
        redis:
            host: xxxx
            port: 6379
            username: xxxx
            password:  xxxx
            timeout: xxxx

# 自定义RedisTemplate

使用JSON序列化的方式

@Configuration
public class RedisConfiguration {

    @Bean
    public RedisTemplate<String,Object> redisTemplate(RedisConnectionFactory connectionFactory) {
        RedisTemplate<String,Object> template = new RedisTemplate<>();
        template.setConnectionFactory(connectionFactory);

        template.setKeySerializer(new StringRedisSerializer());
        template.setValueSerializer(new Jackson2JsonRedisSerializer(Object.class));
        return template;
    }
}

# 使用

# opsForValue()

# get

get(String key)

# set

set(String key, String value, Long time, TimeUnit timeUnit)

# delete

delete(String key)

# 示例

@Service
public class RedisServiceImpl implements RedisService {
    @Autowired
    RedisTemplate redisTemplate;

    @PostConstruct
    private void init() {
        redisTemplate.opsForValue().get("test");
    }

    @Override
    public void setAuthCode(String key, String authCode){
        redisTemplate.opsForValue().set(key,authCode,5, TimeUnit.MINUTES);
    }

    @Override
    public Object get(String key){
        return redisTemplate.opsForValue().get(key);
    }

    @Override
    public boolean del(String key){
        return redisTemplate.delete(key);
    }
}