JSON數據的操作,系列文章:
《Jackson的核心類與API方法:ObjectMapper、JsonNode、ObjectNode、ArrayNode》
《Jackson的使用與創建Jackson工具類》
《Jackson使用ObjectNode對象實現JSON對象數據(一):增、刪、改、查》
《Jackson使用ArrayNode對象實現JSON列表數據(二):增、刪、改、查》
《Jackson實現JSON數據的合并》
?Jackson? 是 Java 生態中廣泛使用的高性能 JSON 處理庫,支持 ?JSON 與 Java 對象之間的雙向轉換?。它以速度快、靈活性高、功能全面著稱,尤其適合大規模數據處理場景。將 Java 對象(POJO)與 JSON 互相轉換。將 JSON 解析為樹形結構(JsonNode),動態訪問和修改節點,適用于非結構化或動態 JSON 數據。
Jackson 庫中的 ArrayNode 數組節點類是用于表示 ?JSON 數組?的可變節點類,繼承自 JsonNode,專為動態構建和操作 JSON 數組設計?。支持動態添加、刪除數組元素,與只讀的 JsonNode 形成對比?,可存儲混合類型元素(如字符串、數值、嵌套對象或其他數組)?,常與 ObjectNode 配合構建復雜 JSON 結構?。
ArrayNode 數組節點類也是 JsonNode 中的一個常用子類,甚至 JsonNode 提供的個別方法就是專門為 ArrayNode 數組節點設計的。
ArrayNode 類常用 API 及其說明:
返回值 | 方法 | 說明 |
---|---|---|
ArrayNode | add(String value) | 將值 value 添加到數組節點的末尾。該方法有多個重載形式,支持添加其他類型的值。 |
ArrayNode | addAll(ArrayNode other) | 將另一個數組節點拼接到本數據節點的末尾。 |
ArrayNode | addAll(Collection<? extends JsonNode> nodes) | 在末尾創造一個新的 ArrayNode 子節點。 |
ArrayNode | addNull() | 在末尾創造一個新的 NullNode 子節點。 |
ObjectNode | addObject() | 在末尾創建一個新的 ObjectNode 子節點。 |
JsonNode | get(int index) | 獲取指定索引位置的節點對象。 |
JsonNode | get(String fieldName) | 獲取指定鍵名位置的節點對象。 |
ArrayNode | insert(int index, JsonNode value) | 在指定索引位置插入 value 節點對象,該方法有多種重載形式,支持插入其他類型的值。 |
ArrayNode | insert(int index, String value) | 在指定索引位置插入 value 值,該方法有多種重載形式,支持插入其他類型的值。 |
ArrayNode | insertArray(int index) | 在指定索引位置插入數組節點。 |
ArrayNode | insertNull(int index) | 在指定索引位置插入 Null 節點。 |