SerializationException: Cannot deserialize

前言:

实现redis点赞接口,但是报错SerializationException: Cannot deserialize


问题描述:

调用获取redis中缓存的value值,但是其存的是序列号(Serializer )后的值,取值时报错SerializationException: Cannot deserialize


解决过程:

例如:xac\xed\x00\x05t\x00\x10 ,这就是默认keySerializer
JdkSerializationRedisSerializer 进行存储,其会将值进行序列化后进行存储。

根本原因:
1)当取出数据时不是使用相同的类提供的get方法,则可能会导致此问题。
2)取出数据时,

lz的问题所在:
redis存储方法:redisTemplate.opsForHash().put(key,hashKey,value)
redis获取方法:stringRedisTemplate.opsForHash().get((Serializable) key, hashKey);

解决:
换回获取方法即可
redisTemplate.opsForHash().get((Serializable) key, hashKey);

诸位应都大同小易,可以检查一下代码。

结束语:

后续还会有redis实现点赞功能,需要的朋友可以点进我的博客查看,或关注公众号:java后端工程师自学沈瑞安

————————————————————上文出自胖胖,转载请附带原文链接

后续更新自学的方法,以及java知识总结
我是哪怕前路坎坷,也不愿负年轻的菜狗,自学之路,共勉

你可能感兴趣的:(java自学,java,redis)