ホームページ > Java > &#&チュートリアル > Jackson は JSON 逆シリアル化中に不明なフィールドをどのように無視できますか?

Jackson は JSON 逆シリアル化中に不明なフィールドをどのように無視できますか?

Barbara Streisand
リリース: 2024-12-01 14:22:11
オリジナル
315 人が閲覧しました

How Can Jackson Ignore Unknown Fields During JSON Deserialization?

Jackson での JSON フィールド変更の克服

Android アプリケーションでの JSON データの管理は、特にスキーマ変更が導入された場合に困難になることがあります。 Jackson ライブラリは JSON マッピングに広く使用されていますが、JSON オブジェクトへの新しいフィールドの追加の影響を受ける可能性があります。

質問:

Jackson はどのように構成できますか?逆シリアル化中に JSON オブジェクトに追加された新しいフィールドを無視するにはprocess?

答え:

Jackson は、この問題に対する多用途の解決策を提供します。@JsonIgnoreProperties アノテーションをクラス レベルで適用して、認識できないプロパティを無視するようにライブラリに指示できます。 JSON データを逆シリアル化するとき。

すべての新しいフィールドを無視するには、次の行を追加します。 POJO クラスへのアノテーション:

@JsonIgnoreProperties(ignoreUnknown = true)
public class Foo {
    ...
}
ログイン後にコピー

使用される Jackson バージョンに応じて、インポート ステートメントは異なります:

  • 現在のバージョン: com.fasterxml.jackson.annotation.JsonIgnoreProperties
  • 古いバージョン: org.codehaus.jackson.annotate.JsonIgnoreProperties

このアノテーションを配置すると、Jackson は次のようになります。で定義されていない JSON オブジェクト内のフィールドはすべて無視します。 POJO クラスを使用すると、JSON スキーマが変更された場合でもシームレスな互換性が可能になります。

以上がJackson は JSON 逆シリアル化中に不明なフィールドをどのように無視できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート