fastjson使用泛型转换对象

本文共 812 字,预计阅读时间 3 分钟

通常会使用fastjson将json字符串转换,可参考文章。而对于事先不确定的类型,则需要使用泛型方式进行对象的转换。

使用泛型定义json字符串转对象的方法:

复制代码
    public static <T> T jsonParse(Object obj, Class<T> clazz) {
        if (null != obj) {
            //使用泛型方式转换对象
            return JSON.parseObject(JSON.toJSONString(obj), new TypeReference<T>() {
            });
        }
        return null;
    }
复制代码

在进行转换时使用了TypeReference对象来声明泛型。

进行调用:

 jsonParse(userObj,User.class);

那么在进行对象转换时,指定值及类型即可,可减少重复转换的代码。

当然也可以转换集合,方式如下:

复制代码
 public static <T> List<T> jsonParseList(Object obj, Class<T> clazz) {
        if (null != obj) {
            //使用泛型方式转换集合
            List<T> list = JSON.parseArray(JSON.toJSONString(obj), clazz);
            return list;
        }
        return null;
    }
复制代码

使用parseArray方法即可进行转换。

posted @   钟小嘿  阅读(2922)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示