1

有两个简单的类

public class A { private int propId; public int getPropId(){return this.propId;} }
public class B extends A {  }

和两个mixin

public interface AMixin{ @JsonProperty("propIdA") int getPropId();}
public interface BMixin{ @JsonProperty("propIdB") int getPropId();}

jsonObjectMapper = new ObjectMapper();
// register mixin
jsonObjectMapper.addMixIn(B.class, BMixin.class);
jsonObjectMapper.addMixIn(A.class, AMixin.class);

以下两个调用得到相同的结果:

jsonObjectMapper.writeValue(writer, new A()); 
jsonObjectMapper.writeValue(writer, new B());

但我希望propIdA用于第一个,propIdB用于第二个。

4

0 回答 0