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

相关推荐
程序员大雄学编程10 分钟前
「用Python来学微积分」17. 导数与导函数
开发语言·python·数学·微积分
扶尔魔ocy13 分钟前
【QT常用技术讲解】可拖拽文件的Widget--QListWidget
开发语言·qt
枫叶丹414 分钟前
【Qt开发】布局管理器(一)-> QVBoxLayout垂直布局
开发语言·c++·qt
I'm Jie22 分钟前
Gradle 的项目结构与源码集(Source Sets)详解(Kotlin DSL)
android·java·开发语言·spring boot·spring·kotlin·gradle
chilavert3181 小时前
技术演进中的开发沉思-151 java-servlet:会话管理
java·开发语言
SheepHappy1 小时前
MyBatis-Plus 源码阅读(一)CRUD 代码自动生成原理深度剖析
java
狂奔小菜鸡1 小时前
Day7 | Java的流程控制详解
java·后端·编程语言
霸道流氓气质1 小时前
Java中使用Collator实现对象List按照中文姓名属性进行A-Z的排序实现
java·开发语言·list
ttghgfhhjxkl1 小时前
《macOS 配置 GO 语言后,如何切换不同 GO 版本?》
开发语言·macos·golang
我命由我123451 小时前
Android PDF 操作 - AndroidPdfViewer 弹出框显示 PDF
android·java·java-ee·pdf·android studio·android-studio·android runtime