【发布时间】:2016-06-17 03:54:46
【问题描述】:
鉴于我自己的数组实现MyArray<T>,我怎样才能让 Jackson 知道它,以便它能够从 JSON 数组反序列化为 MyArray<T>?到目前为止,我只得到了这个例外:
com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of MyArray out of START_ARRAY token
【问题讨论】:
-
需要更多代码,发布
MyArray类。 -
也可能发生反序列化
-
可能@Dariusz 怀疑我做同样的事情。问题是您的类没有扩展数组,而是有一个数组作为实例变量,这是数组操作发生的地方。您的 JSON 必须反映 MyArray 的结构(内部带有数组的对象可能会起作用)。这是我认为的问题,我不知道是否有某种方法可以告诉杰克逊将您的课程视为只是一个数组(但我希望有人能给您答案)
-
您可以为 Jackson 编写自定义反序列化程序。虽然我从未尝试过使用自定义数组,但它也应该可以工作。
标签: java json jackson json-deserialization