Springboot 项目使用 RMapCache 保存数据,发现值出现 \x00,如何处理?-灵析社区

复古直男

`RedisTemplate` 如果不主动设置,默认使用的都是 `JdkSerializationRedisSerializer`,换成 `GenericJackson2JsonRedisSerializer` 就好了。 @Configuration public class RedisTemplateConfig { @Bean public RedisTemplate redisTemplate() { redisTemplate.setDefaultSerializer(new GenericJackson2JsonRedisSerializer()); return redisTemplate; } } 或者 @Configuration public class RedisTemplateConfig { @Bean public GenericJackson2JsonRedisSerializer springSessionDefaultRedisSerializer() { return new GenericJackson2JsonRedisSerializer(); } } #### 补充 import com.fasterxml.jackson.databind.ObjectMapper; import org.redisson.client.codec.Codec; import org.redisson.codec.JsonJacksonCodec; import org.redisson.spring.starter.RedissonAutoConfiguration; import org.redisson.spring.starter.RedissonAutoConfigurationCustomizer; import org.springframework.boot.autoconfigure.AutoConfigureAfter; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class RedissonCustomizer { @Bean RedissonAutoConfigurationCustomizer redissonCustomizer() { ObjectMapper objectMapper = new ObjectMapper(); return configuration -> { Codec codecIns = new JsonJacksonCodec(objectMapper); configuration.setCodec(codecIns); }; } } ## 更新 用mapCache,是一定有这些特殊字符的,cache有最大存活时间。

阅读量:1

点赞量:0

问AI