我正在使用Jackson进行JSON解析。JsonNode和ObjectNode之间的区别是什么
并将其用于以字符串格式映射JSON。
发布于 2016-08-04 15:40:28
快速回答
JsonNode:抽象类,当读取 JSON document.ObjectNode:具体实现时使用,当构建或修改JSON文档时使用。请继续阅读,以获得更详细的答案。
JsonNode
JsonNode是一个抽象类,用作所有JSON节点的基类,这些节点构成了Jackson实现的JSON Tree Model的基础。
引用JsonNode文档:
作为一般设计规则,大多数访问器(getters)方法都包含在这个基类中,以允许在不进行类型转换的情况下遍历结构。
但是,需要通过特定的子类(如ObjectNode和ArrayNode)访问变更器方法(Setter)。
这似乎是合理的,因为正确的类型信息通常在构建或修改树时可用,但在读取树时较少使用(从解析的JSON内容中新构建的)。
可以在com.fasterxml.jackson.databind.node包中找到JsonNode的具体实现。
ObjectNode
ObjectNode是映射JSON对象的JsonNode的具体实现,而JSON对象是defined as following
对象是一组无序的名称/值对。对象以
{(左大括号)开头,以}(右大括号)结束。每个名称后跟:(冒号),名称/值对由,(逗号)分隔。

https://stackoverflow.com/questions/38759976
复制相似问题