首页 > 解决方案 > mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL)不工作

问题描述

我有一个图书馆,我不能把 @JsonInclude(JsonInclude.Include.NON_NULL) @JsonIgnoreProperties(ignoreUnknown = true) 放在这个实体中。

import com.library.OtherClassInLibrary;

public class Myclass
{
  @JsonProperty
  public String id;
  @JsonProperty
  public OtherClassInLibrary  other;
}

    ObjectMapper mapper = new ObjectMapper();
    final Myclass obj = new Myclass ();
    obj .setId("id Myclass ");
    final String str = mapper.writeValueAsString(obj );
    Myclass ressult= mapper.readValue(str, Myclass.class);

预期 --> {"id": "id Myclass"}

但是是 {"id": "id Myclass", "other": null}

你试试添加

mapper.setSerializationInclusion(JsonInclude.Include.NON_EMPTY)
mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL)
mapper.setSerializationInclusion(JsonInclude.Include.NON_ABSENT)

但不起作用你能帮我吗?

标签: javajsonserializationjackson

解决方案


推荐阅读