我想知道FasterXMLJackson(或任何其他纯方式(中是否有一个选项可以以这种方式反序列化JSON,当我从API得到JSON响应时,如下所示:
{"id": "1234", "name": "name1"}
然后它会自动地被映射到类层次结构,如下所示:
class Person (
val sellerId: SellerId,
val name: String
)
class SellerId (
val id: String
)
事实上,我主要感兴趣的是如何从顶级的"id":字符串到嵌套的"sellerid"进行动态反序列化
您需要:
- 定义一个
String
参数构造函数/工厂方法,以便从SellerId
类的String
值反序列化 - 用
com.fasterxml.jackson.annotation.JsonAlias
或com.fasterxml.jackson.annotation.JsonProperty
注释sellerId
属性。类似于:@JsonProperty("id") val sellerId: SellerId