导致出现ClassCastException的原因有两点:
[list]
[*]1.两个类根本没任何关系
[*]2.同一个类, 但是类加载器不一样
[/list]
这次用springBoot集成redis进行session共享时, 对session进行序列化后再存入redis中...当取回对象, 进行反序列化再强转回对象这步时抛出ClassCastException
最终发现是由于这个类两次加载的类加载器不一致导致
结果发现了, 由于集成了springDevTools热部署导致这个问题, 去掉就ok了.
网上发现不少热部署插件都会有这个现象, 序列化时慎用
[list]
[*]1.两个类根本没任何关系
[*]2.同一个类, 但是类加载器不一样
[/list]
这次用springBoot集成redis进行session共享时, 对session进行序列化后再存入redis中...当取回对象, 进行反序列化再强转回对象这步时抛出ClassCastException
最终发现是由于这个类两次加载的类加载器不一致导致
结果发现了, 由于集成了springDevTools热部署导致这个问题, 去掉就ok了.
网上发现不少热部署插件都会有这个现象, 序列化时慎用

本文探讨了使用SpringBoot集成Redis实现会话共享时遇到的ClassCastException问题。问题源于类加载器不一致,特别是在启用springDevTools热部署的情况下。文章提供了具体的解决方案。
5万+

被折叠的 条评论
为什么被折叠?



