参考:

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);

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐