ホームページ >Java >&#&チュートリアル >Jackson でシリアル化するときに Null フィールドを無視するにはどうすればよいですか?

Jackson でシリアル化するときに Null フィールドを無視するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-17 08:24:25315ブラウズ

How to Ignore Null Fields When Serializing with Jackson?

Jackson シリアル化中の Null フィールドの無視

Jackson を使用してデータをシリアル化する場合、出力に Null 値が含まれることが望ましくない場合があります。この記事では、シリアル化中に null 値を持つフィールドを無視するように Jackson を設定する方法について説明し、Jackson の 2.0 以降のバージョンとそれ以前のバージョンの両方に対する解決策を提供します。

Jackson >2.0

null 値がJackson バージョン 2.0 以降でシリアル化されている場合は、setSerializationInclusion を使用して ObjectMapper を直接設定できます。メソッド:

mapper.setSerializationInclusion(Include.NON_NULL);

Jackson

Jackson の以前のバージョンでは、@JsonInclude アノテーションを使用して特定のフィールドの包含ルールを指定できます:

@JsonInclude(Include.NON_NULL)
class Foo
{
  String bar;
}

値を手動で取得する

代わりに、次のようにすることもできますゲッター メソッドの @JsonInclude アノテーションを使用して、シリアル化された出力にフィールドが含まれるかどうかを制御します。

class Foo
{
  String bar;

  @JsonInclude(Include.NON_NULL)
  public String getBar() {
    return bar;
  }
}

このアプローチにより、シリアル化動作の制御を維持でき、null 値のみが含まれることが保証されます。明示的に必要な場合。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。