在 Jackson 的序列化过程中更改子类中的属性顺序的最佳实践是什么?
假设以下简化场景:
@JsonPropertyOrder({ "p1", "p2" })
class animal {
int p1;
int p2;
}
@JsonPropertyOrder({ "p3", "p1", "p2" })
class cat extends animal{
int p3;
}
这可能吗?子类 @JsonPropertyOrder 是否会覆盖父类定义?或者我可以在partent注释中添加“p3”
以节省冗余吗? Jackson 文档关于这个主题的内容非常简短。
最佳答案
@JsonPropertyOrder 可用于给出输出 json 中预期数据详细信息的特定顺序,因此可以使用此注释更改顺序。
@JsonPropertyOrder 是一个可以在类级别使用的注释。它将属性视为 list of fields - these fields can be either in the parent class or in the child class
它定义字段在对象 JSON 序列化产生的字符串中出现的顺序。
引用:
Jackson JSON using @JsonPropertyOrder annotation to define properties serialization order
关于java - jackson :属性(property)秩序与继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49688852/