serialize objectnode node jsonnode example arraynode json serialization jackson pojo

json - objectnode - Jackson: ¿hay alguna manera de serializar POJO directamente a treemodel?



jsonnode to objectnode (1)

Estoy buscando una forma de convertir directamente algunos POJO a un Jackson TreeModel . Sé que existe una traducción de POJO a JSON-String, y TreeModel-to-JSON-String es compatible - hovewer Estoy buscando una traducción POJO-to-TreeModel. ¿Hay alguna manera?

El caso de uso es el siguiente:

  • Las plantillas del lado del servidor se realizan con la implementación Java de Moustache. Esto usa el TreeModel de Jackson.
  • Después de eso, necesito una versión reducida del TreeModel en el lado del cliente, por lo que quiero poder filtrar primero el TreeModel, serializarlo en JSON y luego enviarlo al lado del cliente para su posterior procesamiento.

Esto, idealmente, implica dos pasos de serialización. Sin embargo, en mi solución, actualmente estoy usando tres, que puedes ver aquí:

map = // a map of pojos with jackson annotations //pojo >> JSON StringWriter w = new StringWriter(); objectmapper.writeValue(new JsonFactory().createJsonGenerator(w), map); String json = w.toString(); w.close(); //JSON >> Treemodel JsonNode tree = GenericJcrDTO.mapper.readTree(json); //filter tree here //treemodel >>JSON StringWriter w = new StringWriter(); GenericJcrDTO.mapper.writeValue(new JsonFactory().createJsonGenerator(w), tree); json = w.toString(); w.close();

¿Nadie?


Para responder mi propia pregunta:

JsonNode node = objectMapper.valueToTree(map);