未检查的转换: ‘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。

相关推荐
leoZ23127 分钟前
AI 辅助开发的五道坎
开发语言·人工智能·视觉检测·bert·php·超分辨率重建·openvino
imaol132 分钟前
链表 -- 环链表
java·前端·链表
程序员老陆1 小时前
Qt的QThread::usleep和FFmpeg的libavutil模块的av_usleep哪个精度高一些?
开发语言·qt·ffmpeg·音视频
imaol11 小时前
链表 -- 双向链表
java·前端·链表
2601_963869951 小时前
【计算机毕业设计】基于Java的相框定制系统的设计与实现
java·开发语言·课程设计
名字还没想好☜2 小时前
Go 的 unsafe.Pointer 实战:零拷贝 []byte↔string 转换与三条铁律
开发语言·后端·golang·go·unsafe
于烛2 小时前
为什么hasNext() 对只有一个元素的集合返回 true?90%初学者都有的疑问
java
wuminyu2 小时前
JVM利用io_uring优化堆外内存性能原理剖析
java·linux·c语言·jvm·c++
imaol13 小时前
数据结构---队列
java·数据结构·算法
半亩码田3 小时前
【.NET新特性·第11篇】C# 14 字段属性:告别手写 backing field
java·c#·.net