Jackson data binding documentation表示 Jackson 支持反序列化"Arrays of all supported types"但我无法弄清楚这个的确切语法 .
对于单个对象,我会这样做:
//json input
{
"id" : "junk",
"stuff" : "things"
}
//Java
MyClass instance = objectMapper.readValue(json, MyClass.class);
现在对于一个数组我想这样做:
//json input
[{
"id" : "junk",
"stuff" : "things"
},
{
"id" : "spam",
"stuff" : "eggs"
}]
//Java
List<MyClass> entries = ?
有人知道是否有一个神奇的缺失命令?如果没有那么解决方案是什么?
6 回答
这是一个实用程序,它可以转换为json2object或Object2json,无论你的pojo(实体T)
对于通用实现:
来自Eugene Tskhovrebov
这个解决方案对我来说似乎是最好的
首先创建一个映射器:
作为数组:
如清单:
另一种指定List类型的方法:
首先创建一个线程安全的ObjectReader实例 .
然后使用它: