首頁 >Java >java教程 >Jackson 如何忽略 JSON 物件中的未知欄位?

Jackson 如何忽略 JSON 物件中的未知欄位?

Patricia Arquette
Patricia Arquette原創
2024-11-30 04:03:14843瀏覽

How Can Jackson Ignore Unknown Fields in JSON Objects?

使用Jackson 忽略JSON 物件中新加入的欄位

使用JSON 資料時,物件通常會隨著時間的推移而演變,導致新增欄位。但是,如果您的應用程式依賴將 JSON 物件解析為 POJO(普通舊 Java 物件)類,則新欄位的存在可能會導致錯誤。

為了解決這個挑戰,Jackson 提供了一個名為 @JsonIgnoreProperties 的註釋,它允許您指示 Jackson 忽略與對應 POJO 類別不匹配的欄位。

全域忽略New字段

要忽略所有解析的JSON 物件上新新增的字段,請將以下註解新增至POJO 類別的頂部:

@JsonIgnoreProperties(ignoreUnknown = true)

將ignoreUnknown設為true, Jackson 會自動忽略JSON 物件中存在但POJO類別中未定義的欄位。

特定忽略新字段

如果你想忽略特定字段而不是所有未知字段,可以使用@JsonIgnore 註解:

@JsonIgnore
private String newField;

這個註解會阻止Jackson序列化或反序列化指定的

注意:

@JsonIgnoreProperties 註釋的導入取決於您使用的Jackson 版本:

  • 對於Jackson 2.x,使用:導入com.fasterxml.jackson.annotation.JsonIgnoreProperties;
  • 對於 Jackson 1.x,使用: import org.codehaus.jackson.annotate.JsonIgnoreProperties;

以上是Jackson 如何忽略 JSON 物件中的未知欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn