springCloud使用redis报错,Could not resolve type id xxxxx(类全路径名) into a subtype

本文讲述了在子项目B中如何处理子项目A的Redis Map<String, Student>数据,当子项目B的Student实体类与A不同时,解决类型转换错误的方法,包括原因分析和使用JSONObject存储转换策略。
摘要由CSDN通过智能技术生成

参考:

Redis遇到的问题Could not resolve type id ** into a subtype解决办法_CEVERY的博客-CSDN博客

场景

子项目A将数据存进redis,value存的是Map<String,Student>

子项目B中也有Student这个实体类,里面的属性和子项目A中一致,子项目B想在redis中获取,然后直接转成实体类.

这个时候报错了.

大意就是这个类型转不成了

解决办法

方法1:网上有人说把两个实体类的路径名改成一样的就可以了,我没试,但是也不想试,因为不太符合实际情况.二者路径名不同,是因为在不同的子项目中,子项目的名字是有各自的含义的,所以改路径名这个方法行不通

方法2:存redis的时候不存储实体类,而是存JSON字符串

我之前value 存的类型是:

Map<String,Student> map=new HashMap<>();

redisUtil.hset(redisKey, itemName, JSONObject.toJSONString(map), expireTime);

现在存储的是:

redisUtil.hset(redisKey, itemName, JSONObject.toJSONString(map), expireTime);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值