繁体   English   中英

如何使用 JSON 动态创建 POJO?

[英]How to create POJO dynamically using JSON?

我有多个动态 json 模板如下

JSON 1

{
      "param1": "testuser1",
      "param2": "testuser1@gmail.com"
}

JSON 2

{
      "param1": "testuser2",
      "param2": "testuser2@gmail.com",
      "param3": "New York"
}

JSON 3

{
      "param1": "testuser3"
      "param2": "testuser3@gmail.com",
      "param3": "New York",
      "param4": [
            {
                "sub-param1": "X",
                "sub-param2": "Y"
            },
            {
                "param1": "testuser",
                "param2": "testuser@gmail.com"
            }
          ]
}

我想在运行时将它们转换为 JAVA 对象,即在编译时不创建 POJO。 这可能吗 ? 如果是,该怎么做?

我尝试使用 Jackson lib 将 json 转换为对象(Object Class),但是如何创建通用通用 POJO 或如何使用 setter getter 动态创建 POJO?

您可能希望将 JSON 文档反序列化为Map<String, Object>或使用 Jackson 树模型,如下所示:

TypeReference<Map<String, Object>> type = new TypeReference<Map<String, Object>>() {};
Map<String, Object> map = mapper.readValue(json, type);
JsonNode jsonNode = mapper.readTree(json);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM