Json-Objekt Konvertierung von java-Objekt mit jackson

Habe ich folgenden json-Daten

{"id":10606,
 "name":"ProgrammerTitle",
 "objectMap":{"programme-title":"TestProgramme","working-title":"TestProgramme"}
}

Will ich um diese Daten auf meinen pojo-Objekt

public class TestObject {
    private Long id;
    private String name;

    @JsonProperty("programme-title")
    private String programmeTitle;

    @JsonProperty("working-title")
    private String workingTitle;
}

Hier bin ich in der Lage, die id und den Namen in meinem test-Objekt, sondern für das Objekt anzeigen, ich bin nicht in der Lage, Daten.

So habe ich mir vorgenommen auf mehr Klasse für ObjectMap enthält programmeTitle & workingTitle dies funktioniert gut, aber kann ich nicht diese Felder direkt zu meiner pojo-Objekt
ist dies möglich?

Bin ich mit dem Jackson-Objekt-Mapper-konvertieren von json-Daten.

Es ist in Ordnung, wenn ich ein anderes java-Objekt in meinem pojo wie:

public class TestObject {
private Long id;
private String name;

@JsonProperty("objectMap")
private ObjectMap objectMap;

public Long getId() {
    return id;
}

public void setId(Long id) {
    this.id = id;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public ObjectMap getObjectMap() {
    return objectMap;
}

public void setObjectMap(ObjectMap objectMap) {
    this.objectMap = objectMap;
}

}

public class ObjectMap {

@JsonProperty("programme-title")
private String programmeTitle;

@JsonProperty("working-title")
private String workingTitle;

public String getProgrammeTitle() {
    return programmeTitle;
}

public void setProgrammeTitle(String programmeTitle) {
    this.programmeTitle = programmeTitle;
}

public String getWorkingTitle() {
    return workingTitle;
}

public void setWorkingTitle(String workingTitle) {
    this.workingTitle = workingTitle;
}

}

überprüfen Sie heraus diesen link mkyong.com/java/how-to-convert-java-object-to-from-json-jackson
Ihre json-Objekt und Java-POJO-nicht übereinstimmt. TestObject->programme-title ist nicht dasselbe wie Obj->objectMap->programme-title
Hi ich habe die post gegeben, ich bekomme es, aber ich wollen, verwenden Sie json-Objekt, welches innerhalb dieses Objekts ist das möglich ?
Es ist nicht möglich zu definieren, diese Art von mapping mit annotations. Aber Sie implementieren können Ihre benutzerdefinierten deserializer für diesen Typ und verwenden Sie es in Deserialisierung. Finden Sie unter diesem link: javacodegeeks.com/2013/08/...

InformationsquelleAutor hemali | 2013-10-01

Schreibe einen Kommentar