【问题标题】:Simple Jackson Array string addition简单的杰克逊数组字符串加法
【发布时间】:2018-03-26 18:09:52
【问题描述】:

我正在尝试将 GSON 转换为 jackson 我有一个返回 gson JsonObject 的方法。但是它只创建一个 JsonArray,并返回它,所以我假设那里有一个简单的转换。那么杰克逊等价物是什么?现在该方法一次只添加一个字符串。所以我需要这样的东西:

 JsonNode node = new JsonNode();
 node.add("String 1");
 node.add("String 2');

但会像这样出来:

["String 1","String 2"]

我可以创建一个列表并从那里映射它,但我想这样做。

这似乎太简单了,因为 google 给了我很多建议,远远超出了这个简单的练习所需要的。

如果有人有一个很好的博客来指导如何将 Gson 转换为 Jackson,那就太好了。

【问题讨论】:

    标签: jackson gson


    【解决方案1】:

    这有点棘手 - 你通过 JsonNode 工厂方法创建一个数组节点:

    ArrayNode arrNode = (ArrayNode)new JsonNode().withArray("my_array");  // arg is arrray propertry name
    arrNode.add("String 1");
    arrNode.add("String 2');
    

    【讨论】:

      【解决方案2】:

      如果你只想创建ArrayNodeObjectMapper 有方法createArrayNode(),以及createObjectNode()。然后,您可以向其中添加条目,也可以将节点本身添加到其他数组中,或者作为ObjectNode 中的属性。

      mapper 实际构建节点是使用可配置的JsonNodeFactory 完成的;其简单构造的默认实现是标准实现类型之一,如ObjectNodeArrayNode

      【讨论】:

        猜你喜欢
        • 2017-05-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-08-19
        • 1970-01-01
        相关资源
        最近更新 更多