我有一个要求,我需要打印/生成属性到相应字段的完整映射。为了使自己清楚,我发布了示例代码的片段以及我期望的输出。
public class A{
@JsonProperty("aJsonField")
private String a;
@JsonProperty("bJsonField")
private String b;
@JsonProperty("cJsonField")
private String c;
@JsonProperty("dJsonField")
private D d;
@JsonProperty("fJsonField")
private List<Integer> f;
@JsonProperty("gJsonField")
private List<G> g;
// Corresponding getters and setters follow (Not shown)...
}
public class D{
@JsonProperty("eJsonField")
private String e;
}
public class G{
@JsonProperty("kJsonField")
private String k;
}
输出:在A类上运行时,这应该是输出:
a -> aJsonField
b -> bJsonField
c -> cJsonField
d.e -> dJsonField.eJsonField
f -> fJsonField
g.k -> gJsonField.kJsonField
然而,当在类d上运行时,这应该是输出:
e -> eJsonField
我在杰克逊找不到任何目前满足我要求的方法。请注意,如果有一种方法可以反向打印映射(例如cJsonField -> c
,dJsonField.eJsonField -> d.e
等),我可以忍受它。我正在使用Jackson v.2.6。
我倾注了这个链接Jackson: generate schemas with references,但这并不符合我的要求。
谢谢,
阿努邦