redis序列化配置类

📅 2026/8/6 20:36:12
redis序列化配置类
由于在springboot中使用redis时会有序列化与反序列化因此通过springboot使用redis时产生的key与value会被序列化在直接连接redis查看相应的key会被乱码。如springboot存-name:唐三.redis直接连接时查看会显示\xac\xed\x00\x05t\x00\x04name\xac\xed\x00\x05t\x00\t\xe8\xb5\xb5\xe4\xbc\x9f\xe9\xa3\x8e解决使用自定义序列化配置类。1.导入依赖dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-starter-json/artifactId /dependency2.配置类import org.springframework. context. annotation. Bean; import org.springframework.context.annotation.Configuration; import org.springframework. data.redis.connection. RedisConnectionFactory; import org.springframework. data.redis. core. RedisTemplate; import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer; import org.springframework. data.redis.serializer.StringRedisSerializer; Configuration public class RedisConfig { Bean public RedisTemplateString, Object redisTemplate(RedisConnectionFactory redisConnectionFactory) { RedisTemplateString, Object redisTemplate new RedisTemplate(); //使用配置参数,指定链接的服务器信息 redisTemplate.setConnectionFactory(redisConnectionFactory); //设置序列化器 //StringRedisSerializer UTF_8 new StringRedisSerializer(StandardCharsets.UTF_8); StringRedisSerializer stringRedisSerializer StringRedisSerializer.UTF_8; GenericJackson2JsonRedisSerializer jsonRedisSerializer new GenericJackson2JsonRedisSerializer(); redisTemplate.setKeySerializer(stringRedisSerializer); redisTemplate.setHashKeySerializer(stringRedisSerializer); redisTemplate.setHashValueSerializer(jsonRedisSerializer); redisTemplate.setValueSerializer(jsonRedisSerializer); return redisTemplate; } }