【发布时间】:2017-06-19 15:51:17
【问题描述】:
假设我们有以下类型:
interface Animal {}
class Dog implements Animal {...}
class Cat implements Animal {...}
class Zoo {
private String animalType;
private Animal animal;
...
}
既然Cat 和Dog 具有不同的属性,我们如何根据始终存在于json 中的animalType 字符串将Zoo 对象反序列化为适当的Animal 子类型?我知道如何使用custom deserialization 做到这一点,但我找不到使用Jackson annotations 的方法。如果animalType 属性位于Cat 或Dog 中,这是可能的,但在我的情况下,它的位置在Zoo。
有什么想法吗?
【问题讨论】:
标签: java jackson deserialization jackson2 jackson-databind