gpt4 book ai didi

java - 解析 Java JSON 时的动态 @JsonSubTypes

转载 作者:行者123 更新时间:2023-12-03 20:47:56 27 4
gpt4 key购买 nike

我有一个涉及动态 @JsonSubTypes 贡献者的系统,我正在尝试弄清楚如何重构我的代码(下面的示例)以不使用 @JsonSubTypes 注释而是动态地或在运行时提供这些值。有谁知道这是否可能?

   @JsonSubTypes({
@JsonSubTypes.Type(value = Dog.class, name = "dog"),
@JsonSubTypes.Type(value = Cat.class, name = "cat")
})

最佳答案

对此进行了研究,可以采用多种不同的方法,最有意义的方法是在将具有不同子类实现的基类上声明此注释。

@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS, include = JsonTypeInfo.As.PROPERTY, property = "@class")

这将在序列化的 JSON 中添加一个“@class”元字段,然后在反序列化时使用该元字段来确定正在使用的子类。唯一的缺点是在编写手动 JSON 时必须包含该字段。

关于java - 解析 Java JSON 时的动态 @JsonSubTypes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64688608/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com