jackson将json数组转成List、普通数组。
package com.mkyong; import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper; import java.io.IOException;
import java.util.Arrays;
import java.util.List; public class JacksonArrayExample { public static void main(String[] args) { ObjectMapper mapper = new ObjectMapper();
String json = "[{\"name\":\"mkyong\", \"age\":37}, {\"name\":\"fong\", \"age\":38}]"; try { // 1. convert JSON array to Array objects
Person[] pp1 = mapper.readValue(json, Person[].class); System.out.println("JSON array to Array objects...");
for (Person person : pp1) {
System.out.println(person);
} // 2. convert JSON array to List of objects
List<Person> ppl2 = Arrays.asList(mapper.readValue(json, Person[].class)); System.out.println("\nJSON array to List of objects");
ppl2.stream().forEach(x -> System.out.println(x)); // 3. alternative
List<Person> pp3 = mapper.readValue(json, new TypeReference<List<Person>>() {}); System.out.println("\nAlternative...");
pp3.stream().forEach(x -> System.out.println(x)); } catch (IOException e) {
e.printStackTrace();
} }
}
import lombok.Data;
import lombok.ToString; @Data
@ToString
public class Person {
private String name;
private Integer age;
}
maven依赖
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.8</version>
</dependency>
当你的返回数据类型复杂的时候,可以用TypeReference轻松指定返回类型。
输出:
转载自:https://www.mkyong.com/java/jackson-convert-json-array-string-to-list/
其他参考:https://www.cnblogs.com/dupang/p/5673097.html
jackson将json数组转成List、普通数组。的更多相关文章
- js将一个具有相同键值对的一维数组转换成二维数组
这两天,一个前端朋友在面试的笔试过程中遇到了一道类似于"用js实现将一个具有相同code值的一维数组转换成相同code值在一起的二维数组"的题目.他面试过后,把这个问题抛给了我,问 ...
- numpy中三维数组转变成二维数组
numpy中reshape()函数对三维数组进行转换成二维数组,见下面例子: >>>a=np.reshape(np.arange(18),(3,3,2)) >>> ...
- Java二维数组转成稀疏sparsearray数组
稀疏数组 基本介绍 当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组. 稀疏数组的处理方法是: 记录数组一共有几行几列,有多少个不同的值 把具有不同值的元素的行列及值记 ...
- Jackson将json字符串转换成List<JavaBean>
Jackson处理一般的JavaBean和Json之间的转换只要使用ObjectMapper 对象的readValue和writeValueAsString两个方法就能实现.但是如果要转换复杂类型Co ...
- Jackson将json字符串转换成泛型List
Jackson,我感觉是在Java与Json之间相互转换的最快速的框架,当然Google的Gson也很不错,但是参照网上有人的性能测试,看起来还是Jackson比较快一点 Jackson处理一般的Ja ...
- 400 bad Request: JackSon将json串转成List<Object>,异常com.fasterxml.jackson.databind.JsonMappingException
最近遇到的400, 以前总以为 400 就是参数不匹配造成的,直到今天遇到这个问题 控制台报错如下: com.fasterxml.jackson.databind.JsonMappingExcept ...
- Array.prototype.slice.call(arguments) 类数组转成真正的数组
Array.prototype.slice.call(arguments) 我们知道,Array.prototype.slice.call(arguments)能将具有length属性的对象转成数 ...
- PHP多个一维数组合并成二维数组的简易方法
当我们需要进行数组遍历数据的时候,需要将多个一维数组进行二维的转换,方法很简单.如下: <?php $a= array('张三','李四','王五'); $b= array ('23','24' ...
- js将数组分割成等长数组
方法一: function group(array, subGroupLength) { let index = 0; let newArray = []; while(index < arra ...
- java将一维数组拆分成二维数组
package staticFactory; public class Array { public static void main(String[] args) { String[] a=new ...
随机推荐
- #Python绘制 文本进度条,带刷新、时间暂缓的
#Python绘制 文本进度条,带刷新.时间暂缓的 #文本进度条 import time as T st=T.perf_counter() print('-'*6,'执行开始','-'*6) maxx ...
- Redis键值设计(转载)
参考资料:https://blog.csdn.net/iloveyin/article/details/7105181 丰富的数据结构使得redis的设计非常的有趣.不像关系型数据库那样,DEV和DB ...
- Qt 把连续两次单击当成双击
方法1: 主要通过计时器,在一段时间内的连续两次单击,触发双击事件 void init() { m_nClickCount = 0; m_timer = new QTimer(this); conne ...
- 指针&虚函数多态性
class Class1 { public: virtual void f() { cout << "Function f() in Class1 \n"; } voi ...
- Active Directory 常用属性
1.获取DirectoryEntry string str = string.Empty; string strPath = @LDAP://testDomain.com.mo; string ad ...
- [CQOI2016]手机号码 数位DP
[CQOI2016]手机号码 用来数位DP入门,数位DP把当前是否需要限制取数范围(是否正在贴着临界值跑,即下面的limited)和一切需要满足的条件全部塞进记忆化搜索参数里面就好了,具体情况转移便好 ...
- ERRORS: ?: (corsheaders.E013) Origin '*' in CORS_ORIGIN_WHITELIST is missing scheme or netloc HINT:
报错信息 ERRORS: ?: (corsheaders.E013) Origin '*' in CORS_ORIGIN_WHITELIST is missing scheme or netloc H ...
- 6502 assemble 条件判断
LDA #$ CMP #$ BNE notequal STA $ notequal: BRK
- servlet 中session的使用方法(创建,使用)
创建: protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, ...
- gitlab 配置.ssh实现免密登陆
首次配置gitlab的.ssh时 安装gitbash 通过gitbash 配置.ssh 打开gitbash,输入如下命令生成ssh,邮箱换成自己的 ssh-keygen -t rsa -C " ...