我有一个班级:
public class Item {
private String firstName;
private String lastName;
private int age;
}
当我将其转换为JSON时,我想组合firstName和lastName字段。如下所示:
ObjectMapper objMapper = createMapper();
Item item = new Item("Bob", "Smith", 190);
String json = objMapper.writeValueAsString(item);
但我希望json看起来如下:
{
"Name": "Bob Smith",
"age" : "190"
}
而不是:
{
"firstName": "Bob",
"lastName" : "Smith",
"age" : "190"
}
同样聪明,我想反过来说。所以如果String anotherString是,
{
"Name": "Jon Guy",
"age" : "20"
}
objMapper.readValue(anotherString, Item);
应生成一个名为= Jon,lastName = Guy,age = 20
的Item序列化期间的总结: 删除firstName和lastName,添加名称。 在反序列化期间: 删除名称,将firstName和lastName还原到对象。
我已经听过一些解决Item类的解决方案。但是,我想避免这样做。相反,我希望通过自定义序列化器/反序列化器添加所有代码。