java - 使用 Jackson 反序列化 JSON 实体的动态属性

标签 java json jackson deserialization json-deserialization

JSON 实体包含 value动态属性:

   {
    "name" : "name1",
    "value" : {"different structures: strings, enums, arrays, custom entities"}
   }

实体的 Java 表示:

public class Entity {
    public String name;
    public Object value;
}

value可以传递完全不同的 JSON 结构。每次value应该映射到不同的 POJO。

有没有常见的反序列化方法value属性到特定实体,但 value 的额外反序列化除外属性内容(Map<String, String>结构)?

最佳答案

我使用了@JsonSubTypes(序列化为不同类型)或@JsonDeserialize(自定义序列化)来执行此操作。您可以在https://www.baeldung.com/jackson-annotations查看一些示例。

关于java - 使用 Jackson 反序列化 JSON 实体的动态属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57484739/

相关文章:

java - 将 Dao 作为静态成员存储在类中是否安全?

java - 如何让.properties从Jenkins读取参数

java - 如何在对话框关闭后停止预定的计时器

java - 读取 Jersey sources 文件夹中的 JSON 文件

java - Jackson - Java bean 到 JSON 字符串 : uppercase variable converted into lowercase in JSON

java - Hibernate无法合并并持久化实体类的两个实例

java - Struts 2 JSON JQuery Grid 不点击 Action

javascript - 将 JavaScript 数组转换为 JSON 对象

json - 使用数据工厂将嵌套对象从 SQL Server 复制到 Azure CosmosDB

json - 即使添加了对象映射器,Jackson 也无法检测到 JAXB 注释