使用Jackson将通用的对象列表反序列化为正确的类型

时间:2016-05-19 14:54:48

标签: json scala jackson jackson-module-scala

我的json字符串在顶层有一个数组。 E.g:

[
  {...},
  {...}
]

我正在使用杰克森对其进行反序列化:

val parser = mapper.getFactory.createParser(json)
val mylist = mapper.readValue(parser, classOf[List[Track]])

问题是列表的值是HashMap而不是Track个对象,即使我指定这是Track的通用列表秒。在控制台上:

mylist.isInstanceOf[List[Track]]
> true
mylist.head.isInstanceOf[Track]
> false
mylist.head.isInstanceOf[HashMap]
> true

如何确保jackson返回Track对象而不是HashMap?

0 个答案:

没有答案