我有一个第三方域对象,我希望使用Jackson序列化为JSON。通过公共getter可以访问很多属性,但我只对这些属性中的一小部分感兴趣。由于这是第三方对象,我选择了mixin路线。但是,除了在mixin界面上定义的内容之外,我找不到从原始类中排除所有内容的好方法。我试图在mixin类上指定@JsonIgnoreProperties,但它很快就会失控,需要忽略大量属性。任何解决方法?
提前致谢!
编辑:添加一些代码
public class SpecialObject {
private String name;
private Integer id;
public String getName() {
return name;
}
public Integer getId() {
return id;
}
public String getFoo() {
return "foo";
}
}
public interface SpecialObjectMixin {
@JsonProperty
String getName();
}
我希望我只会在序列化的JSON中获得名称。顺便说一句,我正在使用这个来通过cxf-jaxrs与杰克逊作为提供者进行休息。
答案 0 :(得分:13)
想出办法
@JsonAutoDetect(getterVisibility = Visibility.NONE, isGetterVisibility = Visibility.NONE)
public interface SpecialObjectMixin {
@JsonProperty
String getName();
}