如何在春天使用jackson而不是JdkSerializationRedisSerializer

时间:2017-09-28 01:46:32

标签: java spring redis jackson

我在我的一个java应用程序中使用redis,并且我正在序列化要存储在Redis中的对象列表。但是,我注意到使用RedisTemplate将使用JdkSerializationRedisSerializer。相反,我想使用杰克逊进行序列化,因为我认为速度更好。我如何配置我的RedisTemplate来改用Jackson呢?

为了澄清,我正在配置我的RedisTemplate:

@Override
protected RedisConfiguration getRedisConfiguration() {
    return redisConfiguration;
}

@Bean
public RedisTemplate<String, Object> getRedisTemplate() {
    RedisTemplate<String, Object> template = new RedisTemplate<>();
    template.setConnectionFactory(jedisConnectionFactory());
    return template;
}

1 个答案:

答案 0 :(得分:3)

像这样,

    @Bean
    public RedisTemplate<String, Object> getRedisTemplate() {
        RedisTemplate<String, Object> template = new RedisTemplate<>();
        Jackson2JsonRedisSerializer jrs = new Jackson2JsonRedisSerializer(String.class);
        template.setKeySerializer(jrs);
        template.setConnectionFactory(jedisConnectionFactory());
        return template;
    }

,我建议你阅读这份文件 https://docs.spring.io/spring-data/data-redis/docs/current/reference/html/#redis:template