JSON-Kindobjekteigenschaft in Java-Objektfeld in Jackson binden
Habe ich ein JSON-Objekt, sagen:
{
"foo": {
"bar": 1
},
"baz": 2
}
und will ich binden Sie es in ein Java-Objekt, wie:
@JsonIgnoreProperties(ignoreUnknown = true)
public class Foo {
private int bar;
@JsonProperty("baz")
private int baz;
}
Wie kann ich den Wert von foo.bar
von JSON, die bar
Feld in der Foo
Java-Objekt?
Ich habe versucht die Anmerkungen zu dem Feld mit @JsonProperty("foo.bar")
aber es funktioniert so nicht.
InformationsquelleAutor der Frage hleinone | 2010-11-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
This ain ' T perfekt, aber es ist die eleganteste Art, wie ich herausfinden konnte.
InformationsquelleAutor der Antwort hleinone
Gibt es keine automatisierte Funktionen für diese (soweit ich weiß), aber das ist eine sehr oft gewünschte feature; es ist das Jira-RFE: http://jira.codehaus.org/browse/JACKSON-132 das klingt wie das, was Sie suchen.
InformationsquelleAutor der Antwort StaxMan
Hier ein kurzes Beispiel, das funktioniert:
JSON:
Java:
InformationsquelleAutor der Antwort Wilson Soethe Cursino
Das ist, wie verbindlich ein Apfel, eine orange! Ein weiteres "eingängigen Satz" wäre, "Impedance Mismatch", oder in Star Trek 1, "Nicht Sequetor!" Binden Sie ein passendes Objekt, dann tun die neue Aufgabe in Java zwischen den verschiedenen Arten von Objekten.
InformationsquelleAutor der Antwort Dennis