未检查的转换: ‘java.lang.Object‘ 转换为 ‘java.util.List

fastjson方式

java 复制代码
Object object = ... // 获取待转换的object

List<WbsCategory> list = JSON.parseObject(JSON.toJSONString(object), new TypeReference<List<WbsCategory>>() {});      

在这个示例中,我们使用JSON.toJSONString()将object对象转换为JSON字符串,然后使用JSON.parseObject()将JSON字符串转换为List对象。

需要注意的是,为了正确地解析泛型类型,我们使用了TypeReference类作为parseObject()方法的第二个参数。TypeReference类是fastjson提供的一个工具类,用于解析泛型类型。在TypeReference的构造函数中,我们传入List作为泛型类型的实际参数。

这样,可以在转换过程中显式地指定目标类型,以避免类型安全问题。此外,fastjson也会在转换过程中执行类型检查,确保转换的安全性。

需要注意的是,以上示例假设WbsCategory是一个自定义的类。如果WbsCategory是fastjson支持的常见类型,例如String、Integer等,可以直接使用Integer.class作为parseObject()方法的第二个参数,无需使用TypeReference。

jackson方式

java 复制代码
ObjectMapper objectMapper = new ObjectMapper();
Object fromValue=...;
objectMapper.convertValue(fromValue,  new TypeReference<List<WbsCategory>>() {});

需要注意的是,以上示例假设WbsCategory是一个自定义的类。如果WbsCategory是fastjson支持的常见类型,例如String、Integer等,可以直接使用Integer.class作为convertValue()方法的第二个参数,无需使用TypeReference。

相关推荐
雨过天晴而后无语9 分钟前
Windchill中MVC选中事件级联另一MVC内容
java·javascript·html·mvc
胖咕噜的稞达鸭14 分钟前
C++中的父继子承:继承方式实现栈及同名隐藏和函数重载的本质区别, 派生类的4个默认成员函数
java·c语言·开发语言·数据结构·c++·redis·算法
笑口常开xpr21 分钟前
【C++】模板 - - - 泛型编程的魔法模具,一键生成各类代码
开发语言·数据结构·c++·算法
陈小桔34 分钟前
Springboot之常用注解
java·spring boot·后端
AI视觉网奇43 分钟前
pyqt 触摸屏监听
开发语言·python·pyqt
香菜+1 小时前
python脚本加密之pyarmor
开发语言·python
数据知道1 小时前
Go基础:一文掌握Go语言泛型的使用
开发语言·后端·golang·go语言
啃啃大瓜1 小时前
常用库函数
开发语言·python
笑口常开xpr1 小时前
【C++继承】深入浅出C++继承机制
开发语言·数据结构·c++·算法
code小毛孩2 小时前
如何简单的并且又能大幅度降低任务队列的锁粒度、提高吞吐量?
java·jvm·数据库