値が null の場合、シリアル化中にフィールドを無視するように Jackson に指示するにはどうすればよいでしょうか? 質問する

値が null の場合、シリアル化中にフィールドを無視するように Jackson に指示するにはどうすればよいでしょうか? 質問する

フィールドの値が null の場合、シリアル化中にフィールド値を無視するように Jackson を構成するにはどうすればよいでしょうか。

例えば:

public class SomeClass {
   // what jackson annotation causes jackson to skip over this value if it is null but will 
   // serialize it otherwise 
   private String someValue; 
}

ベストアンサー1

Jackson >2.0を使用してnull値を持つプロパティのシリアル化を抑制するには、ObjectMapper直接設定する、または@JsonInclude注釈:

mapper.setSerializationInclusion(Include.NON_NULL);

または:

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

あるいは、@JsonInclude値が null でない場合に属性が表示されるようにゲッターで使用することもできます。

より完全な例は以下でご覧いただけます。私の答えマップ内の null 値と Bean 内の null フィールドが Jackson を通じてシリアル化されるのを防ぐ方法

おすすめ記事