首页 > 其他分享 >fastjson parseobject typereference - 指定泛型类型

fastjson parseobject typereference - 指定泛型类型

时间:2023-09-27 12:56:34浏览次数:42  
标签:fastjson Java typereference parseobject 字符串 JSON 泛型 解析 TypeReference

Fastjson是一种Java中非常流行的JSON解析库,它可以将JSON字符串转换为Java对象。其中,parseObject方法是Fastjson提供的一种将JSON字符串解析为Java对象的方法,而TypeReference是Java泛型中的一个类,可以用于指定泛型类型,例如List、Map<String, Integer>等等。

当我们使用parseObject方法解析JSON字符串时,如果我们需要将JSON字符串转换为某个泛型类型的Java对象,就需要使用TypeReference类。具体来说,我们可以使用如下方法来解析JSON字符串并将其转换为List类型的Java对象:

String jsonStr = "[\"foo\", \"bar\", \"baz\"]";
List<String> list = JSON.parseObject(jsonStr, new TypeReference<List<String>>(){});

  上述代码中,TypeReference<List>表示要将JSON字符串解析为List类型的Java对象。这里使用了Java中的匿名内部类语法,以便能够创建TypeReference的实例。在TypeReference的实例中,我们必须指定我们要解析的泛型类型,这里是List。

在实际使用中,我们可以根据需要将TypeReference用于不同的泛型类型。例如,如果我们需要将JSON字符串解析为Map<String, Integer>类型的Java对象,可以使用如下代码:

String jsonStr = "{\"foo\": 1, \"bar\": 2, \"baz\": 3}";
Map<String, Integer> map = JSON.parseObject(jsonStr, new TypeReference<Map<String, Integer>>(){});

总之,使用TypeReference可以帮助我们在解析JSON字符串时指定泛型类型,从而方便地将其转换为Java对象。

标签:fastjson,Java,typereference,parseobject,字符串,JSON,泛型,解析,TypeReference
From: https://www.cnblogs.com/QianQianWanWan/p/17732441.html

相关文章

  • [JSON|序列化] fastjson自定义字段命名规则 (转发)
    1序言博主本人近期也遇到了基于fatsjson自定义命名字段规则的问题,为加强对此的学习和记忆,故转发这篇博文。博主本人最终采取的方法21.1前置知识fastjson在将对象转变为JSON字符串时,字段默认使用CamelCase规则命名。在1.2.15版本之后,fastjson支持配置Proper......
  • Web攻防--JNDI注入--Log4j漏洞--Fastjson反序列化漏洞
    JNDI注入什么是JNDIJNDI全称为JavaNamingandDirectoryInterface(Java命名和目录接口),是一组应用程序接口,为开发人员查找和访问各种资源提供了统一的通用接口,可以用来定义用户、网络、机器、对象和服务等各种资源。JNDI支持的服务主要有:DNS、LDAP、CORBA、RMI等。简单从安全......
  • fastjson_1.2.24_unserializer_rce
    目录fastjson1.2.24反序列化导致任意命令执行漏洞1.1、漏洞描述1.2、漏洞等级1.3、影响版本1.4、漏洞复现1、基础环境2、漏洞检测3、漏洞验证1.5、深度利用1、GetShell1.6、修复建议fastjson1.2.24反序列化导致任意命令执行漏洞说明内容漏洞编号漏洞名称fastj......
  • Fastjson_1.2.47_rce
    目录Fastjson_1.2.47_rce1.1、漏洞描述1.2、漏洞等级1.3、影响版本1.4、漏洞复现1、基础环境2、漏洞检测3、漏洞验证1.5、深度利用1、反弹Shell1.6、修复建议Fastjson_1.2.47_rce说明内容漏洞编号漏洞名称Fastjson_1.2.47_远程执行漏洞漏洞评级影响范围......
  • 使用JSON.parseObject深拷贝二-复杂型拷贝
    问:如果json拷贝类型类似Page<T>这种复杂型的呢答:使用JSON的publicstatic<T>TparseObject(Stringtext,TypeReference<T>type,Feature...features)方法;代码如下:Page<EtcPassBillDataResponseVo>voPage=JSON.parseObject(JSON.toJSONString(dtoPage),new......
  • Java对象与json的转换使用的依赖是fastjson,转换的简单案例
    2023-09-04<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.47</version></dependency>转换的简单案例packagecom.hh.json;importcom.alibaba.fastjson......
  • FastJson
    1.JsonArray[{"iSubdomainId":0,"iUpdate":0,"sHtDescription":"","sSourceId":1,"iSource":0,"iHour":0,"sSubdomainName":"","dHtDate":"","iOcLeve......
  • fastjson2 打开 AutoType
    1.功能简介FASTJSON支持AutoType功能,这个功能在序列化的JSON字符串中带上类型信息,在反序列化时,不需要传入类型,实现自动类型识别。2.AutoType安全机制介绍必须显式打开才能使用。和fastjson1.x不一样,fastjson1.x为了兼容有一个白名单,在fastjson2中,没有任何白名单,也不包括......
  • Gson与FastJson详解
    Gson与FastJson详解Java与JSON做什么?将Java中的对象快速的转换为JSON格式的字符串.将JSON格式的字符串,转换为Java的对象.Gson将对象转换为JSON字符串转换JSON字符串的步骤:引入JAR包在需要转换JSON字符串的位置编写如下代码即可:Stringjson=newGson().toJSON(要转换的对象......
  • Gson与FastJson详解
    Gson与FastJson详解Java与JSON做什么?将Java中的对象快速的转换为JSON格式的字符串.将JSON格式的字符串,转换为Java的对象.Gson将对象转换为JSON字符串转换JSON字符串的步骤:引入JAR包在需要转换JSON字符串的位置编写如下代码即可:Stringjson=newGson().toJSON(......