J'ai un objet HashMap
que je veux convertir en arbre JsonNode
en utilisant com.fasterxml.jackson.databind.ObjectMapper
. Quelle est la meilleure façon de procéder?
J'ai trouvé le code suivant, mais comme je ne connais pas bien l'API Jackson, je me demande s'il existe de meilleures façons.
mapper.reader().readTree(mapper.writeValueAsString(hashmap))
Ce qui suit fera l'affaire:
JsonNode jsonNode = mapper.convertValue(map, JsonNode.class);
Ou utilisez la solution plus élégante indiquée dans les commentaires :
JsonNode jsonNode = mapper.valueToTree(map);
Si vous devez écrire votre jsonNode
sous forme de chaîne, utilisez:
String json = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonNode);