Jackson による進化する JSON オブジェクトの克服: 未知のフィールドの無視
変更される可能性のある JSON データを扱う場合、その処理が課題になります既存の POJO クラスの整合性を維持しながら、新しいフィールドを追加します。有名な JSON ライブラリである Jackson は、この苦境に対する便利な解決策を提供します。
質問: JSON オブジェクトに新しく追加されたフィールドを無視して、進化する JSON 構造との互換性を確保するように Jackson をカスタマイズするにはどうすればよいですか?
答え:
ジャクソンは、 @JsonIgnoreProperties と呼ばれるアノテーションは、この問題に対処するために特別に設計されました。このアノテーションをクラス レベルで追加すると、シリアル化および逆シリアル化中に発生した未知のフィールドを無視するように Jackson に指示できます。
このソリューションを実装するには:
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
@JsonIgnoreProperties(ignoreUnknown = true) public class Foo { ... }
ignoreUnknown = true を指定すると、Jackson は対応する POJO クラスに存在しない JSON オブジェクト内のフィールドを無視できるようになります。これにより、JSON 構造が新しい追加によって進化しても、アプリケーションは機能し続けることができます。
以上がJackson は進化する JSON オブジェクトの未知のフィールドをどのように無視できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。