com.fasterxml.jackson.databind.ObjectMapper#writeTree ( )源码实例Demo

下面列出了com.fasterxml.jackson.databind.ObjectMapper#writeTree ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

@Override
public ServiceResponse<String> toJson(byte bytes[]) {

    ByteArrayOutputStream bos = new ByteArrayOutputStream();

    try {
        // read message pack
        ObjectMapper objectMapper = new ObjectMapper(new MessagePackFactory());
        JsonNode node = objectMapper.readTree(bytes);

        // write json
        JsonFactory jsonFactory = new JsonFactory();
        JsonGenerator jsonGenerator = jsonFactory.createGenerator(bos);

        objectMapper.writeTree(jsonGenerator, node);
    } catch (IOException | NullPointerException e) {
        LOGGER.error("Exception converting message pack to JSON", e);
        return ServiceResponseBuilder.<String>error().build();
    }

    return ServiceResponseBuilder.<String>ok().withResult(new String(bos.toByteArray())).build();

}
 
@Override
public ServiceResponse<byte[]> fromJson(String json) {

    ByteArrayOutputStream bos = new ByteArrayOutputStream();

    try {
        // read json
        ObjectMapper objectMapper = new ObjectMapper(new JsonFactory());
        JsonNode node = objectMapper.readTree(json);

        // write message pack
        MessagePackFactory messagePackFactory = new MessagePackFactory();
        JsonGenerator jsonGenerator = messagePackFactory.createGenerator(bos);

        objectMapper.writeTree(jsonGenerator, node);
    } catch (IOException e) {
        LOGGER.error("Exception converting message pack to JSON", e);
        return ServiceResponseBuilder.<byte[]>error().build();
    }

    return ServiceResponseBuilder.<byte[]>ok().withResult(bos.toByteArray()).build();

}
 
源代码3 项目: trident-tutorial   文件: SampleTweet.java
public SampleTweet() throws IOException {
    ObjectMapper om = new ObjectMapper();
    JsonFactory factory = new JsonFactory();
    ImmutableList.Builder<String> b = ImmutableList.builder();

    InputStreamReader reader = new InputStreamReader(this.getClass().getResourceAsStream("sample_tweet.json"));
    try {
        String tweetArray = CharStreams.toString(reader);
        ArrayNode parsed = (ArrayNode)om.readTree(tweetArray);
        for (JsonNode tweet : parsed) {
            StringWriter sw = new StringWriter();
            om.writeTree(factory.createGenerator(sw), tweet);
            b.add(sw.toString());
        }
        sampleTweet = Iterators.cycle(b.build());
    } finally {
        reader.close();
    }
}
 
public void writeToWriter(Writer writer, Object input) {
  final ObjectMapper objectMapper = dataFormat.getObjectMapper();
  final JsonFactory factory = objectMapper.getFactory();

  try {
    JsonGenerator generator = factory.createGenerator(writer);
    objectMapper.writeTree(generator, (JsonNode) input);
  }
  catch (IOException e) {
    throw LOG.unableToWriteJsonNode(e);
  }

}