readtree node jsonnode example convert arraynode array java json jackson

java - example - ¿Cómo convertir HashMap a JsonNode con Jackson?



jsonnode to arraynode jackson (2)

Tengo un objeto HashMap que quiero convertir al árbol com.fasterxml.jackson.databind.ObjectMapper usando com.fasterxml.jackson.databind.ObjectMapper . ¿Cuál es la mejor manera de hacerlo?

Encontré el siguiente código, pero como no conozco bien la API de Jackson, me pregunto si hay formas mejores.

mapper.reader().readTree(mapper.writeValueAsString(hashmap))


Lo siguiente hará el truco:

JsonNode jsonNode = mapper.convertValue(map, JsonNode.class);

O utilice la solución más elegante señalada en los comments :

JsonNode jsonNode = mapper.valueToTree(map);

Si necesita escribir su jsonNode como una cadena, use:

String json = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonNode);


Primero transforma tu mapa en un JsonNode:

ObjectMapper mapper = new ObjectMapper(); JsonNode jsonNodeMap = mapper.convertValue(myMap, JsonNode.class);

Luego agregue este nodo a su ObjectNode con el método set:

myObjectNode.set("myMapName", jsonNodeMap);

Para convertir de JsonNode a ObjectNode use:

ObjectNode myObjectNode = (ObjectNode) myJsonNode;