Lassen Sie Jackson ein einzelnes JSON-Objekt als Array mit einem Element interpretieren
Ist es ein Weg, um Jackson zu interpretieren einzelnen JSON-Objekt wie ein array mit einem element und Umgekehrt?
Beispiel, ich habe 2 leicht unterschiedliche Formate JSON, ich brauche beide, um anzeigen auf gleiche Java Objekt:
Format Eine (JSON-array mit einem element):
points : [ {
date : 2013-05-11
value : 123
}]
Format B (JSON-Objekt, ja ich weiß, es sieht "falsch", sondern es ist das, was ich bin gegeben):
points : {
date : 2013-05-11
value : 123
}
Target Java-Objekt, dass die beiden oben sollten zu konvertieren:
//Data.java
public List<Point> points;
//other members omitted
//Point.java
class Point {
public String date;
public int value;
}
Derzeit nur Eine analysieren, richtig zu Daten. Ich will vermeiden, direkt Manipulationen mit der JSON selbst. Gibt es eine Konfiguration, in der Jackson, den ich manipulieren kann, um es akzeptieren B ?
InformationsquelleAutor der Frage XiaoChuan Yu | 2013-06-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen mit
DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY
- es sollte für Sie arbeiten.Beispiel:
InformationsquelleAutor der Antwort Michał Ziober
Jackson 1.x-kompatiblen version verwendet
DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY
. Also, die obige Antwort änderungen:InformationsquelleAutor der Antwort phillipuniverse