Jackson将json字符串转化为泛型list

json字符串转化为list泛型 json字符串转化为list泛型的源码demo,项目中包括需要运行的jsonjar包 立即下载

    转载 :Jackson,我感觉是在Java与Json之间相互转换的最快速的框架,当然Google的Gson也很不错,但是参照网上有人的性能测试,看起来还是Jackson比较快一点

    Jackson处理一般的JavaBean和Json之间的转换只要使用ObjectMapper 对象的readValue和writeValueAsString两个方法就能实现。但是如果要转换复杂类型Collection如 List<YourBean>,那么就需要先反序列化复杂类型 为泛型的Collection Type。

如果是ArrayList<YourBean>那么使用ObjectMapper 的getTypeFactory().constructParametricType(collectionClass, elementClasses);

如果是HashMap<String,YourBean>那么 ObjectMapper 的getTypeFactory().constructParametricType(HashMap.class,String.class, YourBean.class);

 转载地址:http://www.cnblogs.com/quanyongan/archive/2013/04/16/3024993.html

复制代码
 1     public final ObjectMapper mapper = new ObjectMapper(); 
 2      
 3     public static void main(String[] args) throws Exception{  
 4         JavaType javaType = getCollectionType(ArrayList.class, YourBean.class); 
 5         List<YourBean> lst =  (List<YourBean>)mapper.readValue(jsonString, javaType); 
 6     }   
 7        /**   
 8         * 获取泛型的Collection Type  
 9         * @param collectionClass 泛型的Collection   
10         * @param elementClasses 元素类   
11         * @return JavaType Java类型   
12         * @since 1.0   
13         */   
14     public static JavaType getCollectionType(Class<?> collectionClass, Class<?>... elementClasses) {   
15         return mapper.getTypeFactory().constructParametricType(collectionClass, elementClasses);   
16     }   
 
json字符串实体bean或者List互转(gson和jackson,支持泛型) json字符串实体bean或者List互转(gson和jackson,支持泛型),支持json的格式化,所需要的包在代码也有说明。还有少的可以告知我,谢谢 立即下载

相关推荐

Java中Json字符串直接转换为对象的方法(包括多层List集合)

下面小编就为大家带来一篇Java中Json字符串直接转换为对象的方法(包括多层List集合)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

JSON字符串转List集合操作

场景: JSON字符串转List集合与List集合转JSON字符串 使用的jar包是fastjson-1.2.41.jar 1.JSON字符串转List集合操作 public static <T> List<T> parseArray(String text, Class<T> clazz) { try { re...

zhangbeizhen18的博客 1万+

关于 Python PyQt5 界面运行时提示无法初始化Qt平台的解决方案

关于 Python PyQt5 界面运行时提示无法初始化Qt平台的解决方案

smart_num_1的博客 6884

JSON数组形式字符串转换为Map数组(转为其他的Bean的话,请参考自行变形)

package com.zkn.newlearn.json;      import com.alibaba.fastjson.JSON;   import com.alibaba.fastjson.JSONArray;   import com.alibaba.fastjson.JSONObject;      import java.util.List;   import jav

李慕白 1307

从零到一:AVL Cruise与Matlab联合仿真DLL配置的避坑指南

本文详细介绍了AVL Cruise与Matlab联合仿真DLL配置的全流程,包括编译器选择、环境变量设置、DLL编译与模型导出等关键步骤。针对常见问题如版本匹配、路径错误等提供了实用解决方案,帮助工程师高效实现控制策略与整车性能仿真的无缝对接。

weixin_29054399的博客 567

Leaflet 加载天地图完整配置指南:从插件修改到无限缩放(附源码)

本文详细介绍了Leaflet与天地图深度集成的完整配置指南,包括插件修改、无限缩放实现及源码示例。通过解析天地图服务的WMTS协议、双投影支持和密钥机制,帮助开发者突破缩放级别限制,优化地图应用性能,适用于Web地图开发和高精度GIS系统。

weixin_27180827的博客 442

将json字符串中数组节点转换为泛型list集合(gson)

开发中需要将json中节点单独取出某个节点,解析获取数据,此处对json字符串节点中数组节点,转换为泛型list集合,使用gson。 google的gson的pom文件和jar:gson 代码如下: package my.demo.java.z.generic; import java.util.ArrayList; import java.uti...

weixin_34362875的博客 1343

c语言串口编程详解

串口: 一种异步通信接口,通常用于低速数据传输。RS-232: 最常见的串口标准,定义了电气特性、连接器和信号线。UART: 通用异步收发传输器,是实现串口通信的硬件模块。通过以上内容,你应能够理解并实现C语言在Windows和Linux平台上的串口编程。希望这本手册能帮助你在实际项目中顺利进行串口通信开发。如果有任何疑问或需要进一步的帮助,请随时提问。

jkzyx123的博客 2224

MyBatis JSON类型处理器实战:完美解决泛型List转换难题

上周五下午,测试同学跑过来跟我说:“老王,有个接口返回的数据不对,JSON字段解析出来是空的。”我赶紧看了下代码,是一个存了JSON数组的字段: 对应的Mapper配置: 看起来没问题啊,JsonListTypeHandler我写了很久了,一直用得好好的。但调试后发现一个诡异的现象:roles能正常解析,permissionIds却是空的。折腾了一下午,终于找到了原因:在处理和时,泛型信息丢失了!Java的泛型是编译期实现的,运行时会被擦除。也就是说: 这就是为什么在TypeHandler里,我们拿不到Li

✨ 欢迎来到【Seal ^_^ 的优快云博客】!✨ 880

网卡Inter (R) Wi-Fi 6 AX201突然故障 错误代码10,无法找到无线网络,蓝牙也无效了

问题描述 说来也是坑,简直就莫名其妙。早上在工位上,电脑一切正常(一直用的是无线网络),然后周五准备开周会了,所以拔掉电脑外接设备(电源线,鼠标,外接显示器)拿起电脑到会议室。到了会议室之后,无线网断开了(但一般是不会断开的,都在公司范围内),所以选择重连,但发现已经没有无线网络列表了。 电脑机型:联想YOGA 14s 2021 初步尝试 1、关闭开始飞行模式 - 无果 2、重启并重启 (因为前两天已经提醒过有windows更新,趁这个机会就更新并重启了)- 无果 3、下载鲁大师、驱动精灵、联想驱动管

疯狂的蜗牛 5万+

英飞凌功率MOSFET SPICE 瞬态仿真不收敛问题解决(基于TINA)

英飞凌功率MOSFET SPICE仿真容易出现不收敛问题,这个对于IGBT和SIC的管子应该是一样的,在瞬态仿真分析中,出现如下图所示的报错,Convergence problem。spice是为线性电路设计的,例如运算放大器、线性电源等,不是专门仿真开关电路的。在瞬态仿真时,仿真器是要不断迭代求解的,开关快速的跳变,容易在迭代式出现不收敛的问题。,由于时间步长减少,会消耗更多的计算机内存,如果运行多次内存消耗过大,会报“Out of memory”.解决方法是:报错工程,重启软件,内存重新计算。

miaoxiaokeji的博客 2301

jackson 将 json 转换为 List 泛型

下面是一个常用写法示例,但是不通用: // 返回 List<User> return mapper.readValue(jsonString, new TypeReference<Lits<User>>() {}); 如果需要将上述方法抽象为一个公共的方法,常规来说需要传入 TypeReference 实例对象,比较麻烦。 下面给出的代码方法,可以实现通用。 将其抽象为通用方法代码为: /** * json字符串转成list * * @param jso

小单的博客专栏 7073

【信创-k8s】银河麒麟V10国防版+鲲鹏/飞腾(arm64架构)在线/离线部署k8s1.30+kubesphere

银河麒麟作为国家核高基专项的重要成果,国防版凭借其卓越的安全性和可靠性,已成为军工领域的首选操作系统。之前我们在适配麒麟V4国防版的过程中已发现诸多安全性要求,而麒麟V10国防版在安全防护等级上又达到了更高的级别。本文将主要演示离线部署,因为军工项目基本不会出现联网场景。即使在线,也可以按离线方式部署,且离线部署由于有私有仓库,不会存在镜像获取不到和丢失情况。

jiaworld的博客 730

jackson的泛型之坑

想做 jackson 的string to List方法,于是这样封装: private static final ObjectMapper JSON = new ObjectMapper() .configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false) .configu...

cyjishuang的博客 2585

成功解决使用jupyter notebook命令打开原先存的.ipynb文件突然消失的问题

成功解决使用jupyter notebook命令打开原先存的.ipynb文件突然消失的问题 目录 解决问题 解决思路 解决方法 T1、修改默认配置 T2、修改后缀参数(此方法是其他网友推荐,博主没有尝试) T3、如果以上还不成功,这个时候很可能是环境配置有问题 解决问题 使用jupyter notebook命令打开原先存的.ipynb文件突然消失的问题 解决思路 使用jupyter notebook命令打开原先存的.ipynb文件突然消失,说明...

头部AI社区如有邀博主AI主题演讲请私信—心比天高,仗剑走天涯,保持热爱,奔赴向梦想!低调,专注,谦虚,自律,反思,成长,还算比较正能量的博主,公益免费传播…内心特别想在AI界做出一些可以推进历史进程影响力的技术(兴趣使然,有点小情怀,也有点使命感呀 5118

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

OpenFeign - 泛型与复杂返回类型:如何正确反序列化 List 或 Map

OpenFeign 泛型与复杂返回类型处理指南 本文介绍了如何在 OpenFeign 中正确处理泛型和复杂返回类型(如 List 和 Map)的反序列化问题。主要内容包括: OpenFeign 基础:作为声明式 HTTP 客户端,简化 RESTful API 调用,但处理复杂返回类型时存在挑战。 常见问题: 服务端返回 JSON 对象时,客户端直接返回 List 会导致反序列化失败 泛型类型和嵌套结构需要特殊处理 解决方案: 直接返回 List:当服务端返回 JSON 数组时可用 使用包装类:适用于包含状态

千淘万漉虽辛苦,吹尽狂沙始到金 2万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Jackson—— 转 List 和 Map 集合泛型 为Json 字符串 或 反转化

0、最近有遇到,Jackson 在如何 将 json 字符串 转化为 List 泛型的对象,刚开始的时候由于自己不太了解 Jackson 反序列化的一些方法,导致,反序列的时候总是不成功,后面经同事指导和看了一些官网文档,才发现正确的转化用法,于是,就将官网推荐的一个教程,翻译成这篇博客,以便参考。 以下为翻译内容: 1、概述 本教程将展示如何使用Jackson 2将JSON数组反序列化为Java...

kanlon的博客 1390

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Jackson 里 objectMapper.readValue() 如何转换泛型 List<E>

两个萝卜两个坑

qq_35872456的博客 8575

java遍历json泛型集合_【Json】Jackson将json转换成泛型List

Jackson将json转换成泛型List获取泛型类型/*** 获取泛型类型** @return*/protected Class getGenericsType() {final TypeToken typeToken = new TypeToken(getClass()) {};final Class type = (Class) typeToken.getRawType();return t...

weixin_29170327的博客 391

Json中泛型对象转换和泛型传递

1.使用jackson ObjectMapper mapper = new ObjectMapper(); A<B<C>> resultObj = mapper.readValue("转换json",new TypeReference<A<B<C>>>(){}); A为接收类型,B为A的泛型类,C为B的泛型类 2.使用fastj...

lyf_ldh的博客 2127

Jackson将json字符串转换成泛型List

Jackson,我感觉是在Java与Json之间相互转换的最快速的框架,当然Google的Gson也很不错,但是参照网上有人的性能测试,看起来还是Jackson比较快一点     Jackson处理一般的JavaBean和Json之间的转换只要使用ObjectMapper 对象的readValue和writeValueAsString两个方法就能实现。但是如果要转换复杂类型Collection如

yinjayhui123的专栏 1804

Jackson –将JSON数组字符串转换为List

很少有Jackson示例将JSON数组字符串转换为List // JSON array string // [{"name":"mkyong", "age":37}, {"name":"fong", "age":38}] ObjectMapper mapper = new ObjectMapper(); String json = "[{\"name\":\"mkyong\", ...

一名可爱的技术搬运工 5492

java jackson 转泛型_Jackson如何实现json字符串和泛型List集合之间的转换

前言:Jackson常用方法:Jackson是处理一般的java对象和json之间的转换常用的两个方法是ObjectMapper类的writeValueAsString()和readValue()两个方法就可以实现。但是,如果是要转成指定泛型的List集合,如List.就需要先反序列化复杂类型为泛型Collection Type;举例说明:如果是List集合,那么使用ObjectMapper的ge...

weixin_39961522的博客 718

深入解析Jackson ObjectMapper:精准处理List与Map的泛型转换

在Java后端开发中,JSON序列化与反序列化是数据交换的核心环节。其原理在于将内存中的对象结构转换为可传输或存储的文本格式,反之亦然。这项技术的价值在于实现了跨语言、跨平台的数据互通,是构建RESTful API、处理消息队列和配置文件解析的基石。应用场景广泛,从简单的对象转换到处理复杂的嵌套数据结构,都离不开对类型系统的精准控制。本文聚焦于Jackson库中的ObjectMapper,针对泛型擦除带来的挑战,深入探讨如何利用TypeReference和JavaType实现List与Map的精准转换,确保

weixin_34320724的博客 473

Jackson将json字符串转换成泛型List/map

Jackson将json字符串转换成泛型List/map url: http://www.cnblogs.com/quanyongan/archive/2013/04/16/3024993.html   Jackson处理一般的JavaBean和Json之间的转换只要使用ObjectMapper 对象的readValue和writeValueAsString两个方法就能实现。但是如果要转

jackpk的专栏 2万+
上一篇: 解决邮件javax.mail发送邮件的问题unable to find valid certification path to requested target
下一篇: jquery autocomplete插件结合ajax使用demo
qq_25041295
博客等级 码龄12年 0粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值