【发布时间】:2019-01-30 06:10:46
【问题描述】:
我有一个名为 AddOnsSRO 的对象。仅在序列化时我希望更改对象的字段名称。
尝试在 getter 方法上使用 @JsonProperty,但即使在不涉及序列化的用法中,它也会给我一个重命名的字段。
public class AddOnsSRO {
private String sideCar;
private String sideCarCoverage;
@JsonSerialize
@JsonProperty("abc")
public String getSideCar() {
return sideCar;
}
public void setSideCar(String sideCar) {
this.sideCar = sideCar;
}
@JsonSerialize
@JsonProperty("xyz")
public String getSideCarCoverage() {
return sideCarCoverage;
}
public void setSideCarCoverage(String sideCarCoverage) {
this.sideCarCoverage = sideCarCoverage;
}
}
仅在序列化时以下字段:sideCar 和 sideCarCoverage 必须分别重命名为 abc 和 xyz。
对于除序列化之外的任何其他用途,字段名称应仅为sideCar 和sideCarCoverage。
请帮助并提出相应的更改或注释。
【问题讨论】:
-
你在使用 jackson 库吗?
-
@AkinerAlkan 是的
-
或许你可以试试@JsonAlias
-
@AkinerAlkan 我在哪里使用这个...请建议更新代码
-
您所说的“即使在用法上也给我一个重命名的字段”是什么意思?
AddOnsSRO x; x.getSideCar();不起作用?
标签: java json spring serialization annotations