首页 > 解决方案 > 使用ObjectMapper时如何使用mixin忽略字段?

问题描述

class Apple{

@JsonProperty("colour")
public String colour;

@JsonProperty("dummy_params")
public DummyParams dummyParams;

}
public abstract class AppleMixin{

    @JsonIgnore
    @JsonProperty("dummy_params")
    public DummyParams dummyParams;

}

使用 ObjectMapper 时,我试图忽略 dummyParams 字段

class Tester{
  public static void main(){
  Apple app = new Apple();
  app.setColor("red");
  app.setDummyParams(new DummyParams("1","2"));

  ObjectMapper objecMapper = new ObjectMapper();
  objecMapper.addMixIn(Apple.class, AppleMixin.class);
  String result = objecMapper.writeValueAsString(exec);
  }
}

我正在使用 com.fasterxml.jackson.databind.ObjectMapper

预期结果:{“颜色”:“红色”}

实际结果:{"colour":"red", "dummyParams":{"dummyOne" :1,"dummyTwo":2}}

mixin 不工作。我做错了吗?

标签: javaserializationjacksonmixins

解决方案


推荐阅读