J'ai un objet JSON dont je n'ai pas le contrôle et que je veux mapper à un objet Java qui est pré-créé. Il existe un attribut dans l'objet JSON qui peut être une URL ou un objet JSONArray.Jackson JSON vers le mappage Java pour le même attrubute avec un type de données différent
Class SomeClass {
private URL items;
public URL getURL() {
return items;
}
public void setURL(URL url) {
this.items = url;
}
}
est inférieure à la JSON:
Cas A:
{
...
items: http://someurl.abc.com/linktoitems,
...
}
OU
Cas B
{
...
items: [
{ "id": id1, "name": name1 },
{ "id": id2, "name": name2 }
]
...
}
Si je crée le POJO à la carte pour les cas A , Le cas B échoue et vice versa. En bref, existe-t-il un moyen de mapper l'attribut JSON au champ POJO avec différents types de données? Dans ce cas, je vais créer deux champs distincts dans le POJO nommé,
private URL itemLink;
private Item[] itemList;
Merci pour la réponse. Cependant, j'identifie manuellement le type de données de la clé et j'affecte la valeur à l'objet approprié (URL ou liste) – user788052