有没有办法让杰克逊将单个 JSON 对象解释为具有一个元素的数组,反之亦然?
例如,我有 2 种稍微不同的 JSON 格式,我都需要映射到同一个 Java 对象:
格式A(一个元素的 JSON 数组):
points : [ {
date : 2013-05-11
value : 123
}]
格式B(JSON 对象,是的,我知道它看起来“错误”,但这是我得到的):
points : {
date : 2013-05-11
value : 123
}
以上两者都应转换为的目标 Java 对象:
//Data.java
public List<Point> points;
//other members omitted
//Point.java
class Point {
public String date;
public int value;
}
目前,只有A会正确解析为 Data。我想避免直接篡改 JSON 本身。Jackson 中是否有一些配置我可以篡改以使其接受B?