com.fasterxml.jackson.databind.ObjectMapper.writeTree()方法的使用及代码示例

x33g5p2x  于2022-01-17 转载在 其他  
字(9.6k)|赞(0)|评价(0)|浏览(113)

本文整理了Java中com.fasterxml.jackson.databind.ObjectMapper.writeTree()方法的一些代码示例,展示了ObjectMapper.writeTree()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ObjectMapper.writeTree()方法的具体详情如下:
包路径:com.fasterxml.jackson.databind.ObjectMapper
类名称:ObjectMapper
方法名:writeTree

ObjectMapper.writeTree介绍

[英]Method to serialize given JSON Tree, using generator provided.
[中]方法使用提供的生成器序列化给定的JSON树。

代码示例

代码示例来源:origin: brianfrankcooper/YCSB

/**
  * Encode the object for couchbase storage.
  *
  * @param source the source value.
  * @return the storable object.
  */
 private Object encode(final Map<String, ByteIterator> source) {
  Map<String, String> stringMap = StringByteIterator.getStringMap(source);
  if (!useJson) {
   return stringMap;
  }

  ObjectNode node = JSON_MAPPER.createObjectNode();
  for (Map.Entry<String, String> pair : stringMap.entrySet()) {
   node.put(pair.getKey(), pair.getValue());
  }
  JsonFactory jsonFactory = new JsonFactory();
  Writer writer = new StringWriter();
  try {
   JsonGenerator jsonGenerator = jsonFactory.createGenerator(writer);
   JSON_MAPPER.writeTree(jsonGenerator, node);
  } catch (Exception e) {
   throw new RuntimeException("Could not encode JSON value");
  }
  return writer.toString();
 }
}

代码示例来源:origin: ebean-orm/ebean

@Override
public void jsonWrite(JsonGenerator writer, JsonNode value) throws IOException {
 objectMapper.writeTree(writer, value);
}

代码示例来源:origin: HubSpot/Singularity

@Override
public InputStream open(String path) throws IOException {
  final JsonNode originalNode = objectMapper.readTree(yamlFactory.createParser(delegate.open(defaultConfigurationPath)));
  final JsonNode overrideNode = objectMapper.readTree(yamlFactory.createParser(delegate.open(path)));
  if (!(originalNode instanceof ObjectNode && overrideNode instanceof ObjectNode)) {
    throw new SingularityConfigurationMergeException(String.format("Both %s and %s need to be YAML objects", defaultConfigurationPath, path));
  }
  merge((ObjectNode)originalNode, (ObjectNode)overrideNode);
  final ByteArrayOutputStream baos = new ByteArrayOutputStream();
  objectMapper.writeTree(yamlFactory.createGenerator(baos), originalNode);
  return new ByteArrayInputStream(baos.toByteArray());
}

代码示例来源:origin: org.avaje.ebean/ebean

@Override
public void jsonWrite(JsonGenerator writer, JsonNode value) throws IOException {
 objectMapper.writeTree(writer, value);
}

代码示例来源:origin: io.ebean/ebean

@Override
public void jsonWrite(JsonGenerator writer, JsonNode value) throws IOException {
 objectMapper.writeTree(writer, value);
}

代码示例来源:origin: edu.byu.hbll/json

@Override
public void writeTree(JsonGenerator jgen, TreeNode rootNode) {
 try {
  super.writeTree(jgen, rootNode);
 } catch (IOException e) {
  throw new UncheckedIOException(e);
 }
}

代码示例来源:origin: edu.byu.hbll/json

@Override
public void writeTree(JsonGenerator jgen, JsonNode rootNode) {
 try {
  super.writeTree(jgen, rootNode);
 } catch (IOException e) {
  throw new UncheckedIOException(e);
 }
}

代码示例来源:origin: com.wavefront/proxy

@Override
 public void writeTo(JsonNode jsonNode, Class<?> type, Type genericType, Annotation[] annotations,
           MediaType mediaType, MultivaluedMap<String, Object> httpHeaders,
           OutputStream entityStream) throws IOException, WebApplicationException {
  JsonGenerator generator = factory.createGenerator(entityStream);
  mapper.writeTree(generator, jsonNode);
 }
}

代码示例来源:origin: wavefrontHQ/java

@Override
 public void writeTo(JsonNode jsonNode, Class<?> type, Type genericType, Annotation[] annotations,
           MediaType mediaType, MultivaluedMap<String, Object> httpHeaders,
           OutputStream entityStream) throws IOException, WebApplicationException {
  JsonGenerator generator = factory.createGenerator(entityStream);
  mapper.writeTree(generator, jsonNode);
 }
}

代码示例来源:origin: com.ning/metrics.serialization-smile

public void writeToJsonGenerator(final JsonGenerator gen) throws IOException
{
  // writes '{eventName:<name>,payload:{<data>}}' --it's kind of silly but ultimately inconsequential to nest them like this.
  gen.writeStartObject();
  gen.writeStringField("eventName", eventName);
  gen.writeFieldName("payload");
  /* Note: output format used depends completely on generator we are being passed
   * and NOT on which mapper we use -- mappers are format independent and rely
   * on underlying JsonParser/JsonGenerator for low-level handling.
   */
  getObjectMapper().writeTree(gen, root);
  gen.writeEndObject();
}

代码示例来源:origin: org.jmxtrans.embedded/embedded-jmxtrans

public String write_tostring(JsonNode json){
  ObjectMapper mapper = new ObjectMapper();
  StringWriter out = new StringWriter();
  try {
    JsonFactory fac = new JsonFactory();
    JsonGenerator gen = fac.createJsonGenerator(out);
    // Now write:
    mapper.writeTree(gen, json);
    gen.flush();
    gen.close();
    return out.toString();
  }
  catch(Exception e) {
    exceptionCounter.incrementAndGet();
    logger.warn("Exception in write_tostring: " + e); 
  }
  return null;
}

代码示例来源:origin: eshioji/trident-tutorial

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();
  }
}

代码示例来源:origin: org.walkmod/walkmod-core

public void write(JsonNode node) throws TransformerException {
  if (node != null) {
    File cfg = new File(fileName);
    FileOutputStream fos = null;
    try {
      fos = new FileOutputStream(cfg);
      JsonGenerator generator = mapper.getFactory().createGenerator(fos);
      generator.useDefaultPrettyPrinter();
      mapper.writeTree(generator, node);
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      if (fos != null) {
        try {
          fos.close();
        } catch (IOException e) {
          throw new TransformerException("Error writting the configuration", e);
        }
      }
    }
  }
}

代码示例来源:origin: JavaChat/OakBot

/**
 * Pretty prints the given JSON node.
 * @param node the JSON node
 * @return the pretty-printed JSON
 */
public static String prettyPrint(JsonNode node) {
  ObjectMapper mapper = new ObjectMapper();
  JsonFactory factory = new JsonFactory();
  StringWriter writer = new StringWriter();
  try {
    JsonGenerator generator = factory.createGenerator(writer);
    generator.setPrettyPrinter(new DefaultPrettyPrinter());
    mapper.writeTree(generator, node);
    generator.close();
    return writer.toString();
  } catch (IOException e) {
    //should never be thrown
    throw new RuntimeException(e);
  }
}

代码示例来源:origin: walkmod/walkmod-core

public void write(JsonNode node) throws TransformerException {
  if (node != null) {
    File cfg = new File(fileName);
    FileOutputStream fos = null;
    try {
      fos = new FileOutputStream(cfg);
      JsonGenerator generator = mapper.getFactory().createGenerator(fos);
      generator.useDefaultPrettyPrinter();
      mapper.writeTree(generator, node);
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      if (fos != null) {
        try {
          fos.close();
        } catch (IOException e) {
          throw new TransformerException("Error writting the configuration", e);
        }
      }
    }
  }
}

代码示例来源:origin: com.hubspot/SingularityService

@Override
public InputStream open(String path) throws IOException {
  final JsonNode originalNode = objectMapper.readTree(yamlFactory.createParser(delegate.open(defaultConfigurationPath)));
  final JsonNode overrideNode = objectMapper.readTree(yamlFactory.createParser(delegate.open(path)));
  if (!(originalNode instanceof ObjectNode && overrideNode instanceof ObjectNode)) {
    throw new SingularityConfigurationMergeException(String.format("Both %s and %s need to be YAML objects", defaultConfigurationPath, path));
  }
  merge((ObjectNode)originalNode, (ObjectNode)overrideNode);
  final ByteArrayOutputStream baos = new ByteArrayOutputStream();
  objectMapper.writeTree(yamlFactory.createGenerator(baos), originalNode);
  return new ByteArrayInputStream(baos.toByteArray());
}

代码示例来源:origin: apache/knox

private void processEndArray() throws IOException {
 Level child;
 Level parent;
 child = stack.pop();
 if( child.equals(bufferingLevel) ) {
  filterBufferedNode( child );
  mapper.writeTree( generator, child.node );
  bufferingLevel = null;
  bufferingConfig = null;
 } else if( bufferingLevel == null ) {
  generator.writeEndArray();
  if( !stack.isEmpty() ) {
   parent = stack.peek();
   switch( parent.node.asToken() ) {
    case START_ARRAY:
     ((ArrayNode)parent.node ).removeAll();
     break;
    case START_OBJECT:
     ((ObjectNode)parent.node ).removeAll();
     break;
    default:
     throw new IllegalStateException();
   }
  }
 }
}

代码示例来源:origin: org.apache.knox/gateway-provider-rewrite

private void processEndArray() throws IOException {
 Level child;
 Level parent;
 child = stack.pop();
 if( bufferingLevel == child ) {
  filterBufferedNode( child );
  mapper.writeTree( generator, child.node );
  bufferingLevel = null;
  bufferingConfig = null;
 } else if( bufferingLevel == null ) {
  generator.writeEndArray();
  if( !stack.isEmpty() ) {
   parent = stack.peek();
   switch( parent.node.asToken() ) {
    case START_ARRAY:
     ((ArrayNode)parent.node ).removeAll();
     break;
    case START_OBJECT:
     ((ObjectNode)parent.node ).removeAll();
     break;
    default:
     throw new IllegalStateException();
   }
  }
 }
}

代码示例来源:origin: org.apache.knox/gateway-provider-rewrite

private void processEndObject() throws IOException {
 Level child;
 Level parent;
 child = stack.pop();
 if( bufferingLevel == child ) {
  filterBufferedNode( child );
  mapper.writeTree( generator, child.node );
  bufferingLevel = null;
  bufferingConfig = null;
 } else if( bufferingLevel == null ) {
  generator.writeEndObject();
  if( !stack.isEmpty() ) {
   parent = stack.peek();
   switch( parent.node.asToken() ) {
    case START_ARRAY:
     ((ArrayNode)parent.node ).removeAll();
     break;
    case START_OBJECT:
     ((ObjectNode)parent.node ).removeAll();
     break;
    default:
     throw new IllegalStateException();
   }
  }
 }
}

代码示例来源:origin: apache/knox

private void processEndObject() throws IOException {
 Level child;
 Level parent;
 child = stack.pop();
 if( child.equals(bufferingLevel) ) {
  filterBufferedNode( child );
  mapper.writeTree( generator, child.node );
  bufferingLevel = null;
  bufferingConfig = null;
 } else if( bufferingLevel == null ) {
  generator.writeEndObject();
  if( !stack.isEmpty() ) {
   parent = stack.peek();
   switch( parent.node.asToken() ) {
    case START_ARRAY:
     ((ArrayNode)parent.node ).removeAll();
     break;
    case START_OBJECT:
     ((ObjectNode)parent.node ).removeAll();
     break;
    default:
     throw new IllegalStateException();
   }
  }
 }
}

相关文章

微信公众号

最新文章

更多

ObjectMapper类方法