【发布时间】:2021-11-14 08:13:47
【问题描述】:
我正在使用 kotlin 和 jackson,我正在寻找一种方法来反序列化具有以下结构的 json,这可能在两种情况下有所不同:
案例一:
{
"parent1": "parentvalue1",
"parent2": "parentvalue2",
"child1": "childvalue1",
"child2": "childvalue2"
}
案例 2:
{
"parent1": "parentvalue1",
"parent2": "parentvalue2",
"child3": "childvalue3",
"child4": "childvalue4"
}
我的模型类如下所示:
家长:
open class Parent(
val parent1: String,
val parent2: String
) {
constructor (parent: Parent) : this(
parent1 = parent.parent1,
parent2 = parent.parent2
)
}
孩子们:
class Child1(
parent: Parent,
val child1: String,
val child2: String
) : Parent(parent)
class Child2(
parent: Parent,
val child3: String,
val child4: String
) : Parent(parent)
是否可以使用 Jackson 反序列化此类结构?
val parent = ObjectMapper().readValue(myJson, Parent::class.java)
【问题讨论】:
-
试试this guide。如果有帮助,请告诉我。
-
您好@AliasCartellano,感谢您的回答。提到的指南不包括继承 - 我的情况不是双向关系。
标签: java json kotlin serialization jackson