• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java JsonFlattener类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.github.wnameless.json.flattener.JsonFlattener的典型用法代码示例。如果您正苦于以下问题:Java JsonFlattener类的具体用法?Java JsonFlattener怎么用?Java JsonFlattener使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



JsonFlattener类属于com.github.wnameless.json.flattener包,在下文中一共展示了JsonFlattener类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: process

import com.github.wnameless.json.flattener.JsonFlattener; //导入依赖的package包/类
@Override
public String process(JsonNode jsonNode) throws JsonProcessingException {
  final StringBuilder builder = new StringBuilder();
  if(null != jsonNode){
    final String jsonText = MAPPER.writeValueAsString(jsonNode);
    final Map<String, Object>  flatMap = JsonFlattener.flattenAsMap(jsonText);
    final List<String> header = createHeader(flatMap);
   
    header.forEach(h -> {
      builder.append(h);
      builder.append("\t");
    });
    
    builder.replace(builder.lastIndexOf("\t"), builder.lastIndexOf("\t") + 1, "\n");
    for (final Iterator<String> iterator = flatMap.keySet().iterator(); iterator.hasNext(); ) {
      for(int i = 0; i < header.size(); i++){
        builder.append(flatMap.get(iterator.next()));
        builder.append("\t");
      }
      builder.replace(builder.lastIndexOf("\t"), builder.lastIndexOf("\t") + 1, "\n");
    }
  }
  return builder.toString();
}
 
开发者ID:sanjuthomas,项目名称:zeppelin-marklogic-interpreter,代码行数:25,代码来源:CollectionProcessor.java


示例2: putAsJson

import com.github.wnameless.json.flattener.JsonFlattener; //导入依赖的package包/类
/**
 * Puts the content of the Json recursively from the specified <i>path</i>
 * @param path root path (i.e. /path1/path2)
 * @param data JsonNode
 * @param etcdClient EtcdClient
 */
public static void putAsJson(String path, JsonNode data, EtcdClient etcdClient)
        throws IOException, EtcdAuthenticationException, TimeoutException, EtcdException {

  Map<String, Object> flattened = new JsonFlattener(EtcdUtil.jsonToString(data))
          .withFlattenMode(FlattenMode.MONGODB)
          .withSeparator('/')
          .flattenAsMap();

  // clean previous data and replace it with new json structure
  try {
    etcdClient.delete(path).recursive().send().get();
  } catch (EtcdException e) {
    // interrupt always except when the previous key didn't exist
    if (EtcdErrorCode.KeyNotFound != e.errorCode) {
      throw e;
    }
  }

  // iterate over every flattened key and build the structure in etcd
  for (Map.Entry<String, Object> entry : flattened.entrySet()) {
    etcdClient.put(path + "/" + entry.getKey(), String.valueOf(entry.getValue())).send().get();
  }
}
 
开发者ID:jurmous,项目名称:etcd4j,代码行数:30,代码来源:EtcdUtil.java


示例3: testGetAndPut

import com.github.wnameless.json.flattener.JsonFlattener; //导入依赖的package包/类
@Test
public void testGetAndPut() throws Exception {
    ObjectMapper mapper = new ObjectMapper();
    EtcdNettyConfig config = new EtcdNettyConfig();
    EtcdNettyClient nettyClient = new EtcdNettyClient(config, URI.create("http://localhost:4001"));
    config.setMaxFrameSize(1024 * 1024); // Desired max size
    EtcdClient client = new EtcdClient(nettyClient);

    File testJson = new File("src/test/resources/test_data.json");
    JsonNode original = mapper.readTree(testJson);

    JsonNode fromEtcd = EtcdUtil.getAsJson("/etcd4j_test", client);

    // flatten both and compare
    Map<String, Object> rootFlat = new JsonFlattener(EtcdUtil.jsonToString(original))
            .withFlattenMode(FlattenMode.MONGODB)
            .withSeparator('/')
            .flattenAsMap();

    Map<String, Object> testFlat = new JsonFlattener(EtcdUtil.jsonToString(fromEtcd))
            .withFlattenMode(FlattenMode.MONGODB)
            .withSeparator('/')
            .flattenAsMap();

    assertEquals(rootFlat.size(), testFlat.size());
    for (Map.Entry<String, Object> entry : rootFlat.entrySet()) {
        assertNotNull(testFlat.get(entry.getKey()));
    }
}
 
开发者ID:jurmous,项目名称:etcd4j,代码行数:30,代码来源:EtcdJsonTest.java



注:本文中的com.github.wnameless.json.flattener.JsonFlattener类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java DefaultType类代码示例发布时间:2022-05-22
下一篇:
Java ExecSpec类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap