Objet Json conversion en objet java à l'aide de jackson
J'ai suivantes données json
{"id":10606,
"name":"ProgrammerTitle",
"objectMap":{"programme-title":"TestProgramme","working-title":"TestProgramme"}
}
Je veux mettre ces données à mon pojo objet
public class TestObject {
private Long id;
private String name;
@JsonProperty("programme-title")
private String programmeTitle;
@JsonProperty("working-title")
private String workingTitle;
}
Ici, je suis en mesure de définir l'id et le nom de mon objet de test mais pour l'objet carte, je ne suis pas capable de mettre des données.
Donc j'ai fait le plus de classe pour ObjectMap qui contient programmeTitle & workingTitle cela fonctionne bien mais je ne peux pas définir ce champs directement à mon pojo objet
est-ce possible de mettre en?
Je suis à l'aide de Jackson Objet Mappeur pour convertir les données json.
Il fonctionne très bien si je crée un autre objet java à l'intérieur de mon pojo comme:
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;
}
}
- consultez ce lien mkyong.com/java/how-to-convert-java-object-to-from-json-jackson
- Votre objet json et POJO Java ne correspond pas.
TestObject->programme-title
est pas le même queObj->objectMap->programme-title
- Salut, j'ai vérifié le post étant donné que je l'obtenir, mais je veux utiliser un objet json qui est à l'intérieur de cet objet est-ce possible ?
- Il n'est pas possibel pour définir ce type de cartographie à l'aide d'annotations. Mais vous pouvez mettre en œuvre votre personnalisé deserializer pour ce type et de les utiliser dans le processus de désérialisation. Voir ce lien: javacodegeeks.com/2013/08/...
Vous devez vous connecter pour publier un commentaire.
Si votre JSON, c'est comme cela
ensuite, vous pouvez écrire votre objet mappeur de classe comme ça..
veuillez consulter cette vérifier
Vous pouvez écrire votre propre deserializer pour cette classe:
Votre entité:
Et exemple d'utilisation:
Programme ci-dessus imprime: