我在“位置”类中有一个字段“州”。
public class Location {
private String state = "TX";
// getters / setters
}
在将Jackson序列化为JSON时,我想添加一个与'state'字段具有相同值的字段,以便与向后兼容的旧客户端保留'st8'字段。 JSON如下所示:
{
"state": "TX","st8": "TX"
}
我已经研究了@JsonAppend批注,但似乎需要一些奇怪的操作才能使其正常工作,我对此感到很不舒服:
Location bean = new Location("TX")
ObjectWriter writer = mapper.writerFor(Location.class).withAttribute("st8","TX");
String jsonString = writer.writeValueAsString(bean);
如果我被迫采用这种方法,那么我将如何在API中使用它,因为它仅处理POJO的/ DTO,并且序列化都是神奇地处理的?