# Java Jackson 中的 JsonNode 和 ObjectNode

**URL:** <https://www.isharkfly.com/t/java-jackson-jsonnode-objectnode/13842>\
**Category:** 程序语言\
**Tags:** java\
**Created:** [January 5, 2022, 7:42pm UTC](https://www.isharkfly.com/t/java-jackson-jsonnode-objectnode/13842 "2022-01-05T19:42:05Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![honeymoose](https://www.isharkfly.com/user_avatar/www.isharkfly.com/honeymoose/32/20796_2.png) [@honeymoose](https://www.isharkfly.com/u/honeymoose)\
**Post date:** [January 5, 2022, 7:42pm UTC](https://www.isharkfly.com/t/java-jackson-jsonnode-objectnode/13842/1 "2022-01-05T19:42:05Z")

</div>

在我们使用 Java 的 Jackson 的时候，我们通常会使用到 JsonNode 和 ObjectNode ，以及 ArrayNode 对象。

## 说明

简单来说 ObjectNode 和 ArrayNode 是 JsonNode 的扩展，ObjectNode 和 ArrayNode 是基于 JsonNode 的。

`ArrayNode` 具有处理数组的特定方法。

更多的，因为 JsonNode 是不可变的，因此通常使用 JsonNode 来读取数据，ObjectNode 来写入数据。

![1739473-20201103090554273-253634113](https://www.isharkfly.com/images/transparent.png)

正是有上面的继承关系，将会导致不同 node 对象的使用是不一样的。
