java - Jackson 从根数组中获取 key 的值

标签 java json jackson

我需要快速解析出类似 JSON 的根节点,如下所示:

[
  {"key":"foo", "value":123},
  {"key":"bar", "value":"Hello World!"},
  {"key":"far", "value":{"something":1}}
]

简单地说,我需要查看“key”的值(即“foo”、“bar”、“far”),以确定是否需要将“value”部分完全反序列化为 POJO。

我尝试过为 POJO 映射创建一个类,但这会带来很大的开销,而且它特别不喜欢 Map,因为我的值的内部有时是值类型,有时更多是 JSON。

有什么想法可以快速遍历键,然后取出值并反序列化它吗?

提前致谢!

最佳答案

您可能想绑定(bind)为树(ObjectMapper.readTree(),给出根节点的 JsonNode),遍历,然后使用 ObjectMapper.readValue(valueNode) 单独反序列化值?

关于java - Jackson 从根数组中获取 key 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7832291/

相关文章:

java - 在java中将以 `00`开头的字符串数字转换为 `+`

json - 在 Go Lang 中使用深度嵌套的 JSON

java - 如何使用 Jackson 反序列化外部 Lombok 构建器类

spring-security - OAuth2Authentication对象反序列化(RedisTokenStore)

java - jackson 通过删除 'is' 重命名原始 boolean 字段

java - Spring 在 security-context.xml 中使用 applicationContext 中的 bean

java - 如何在 JOGL 中解析或加载 .obj 文件?

java - Spring Boot @EnableTransactionManagement(mode = AdviceMode.ASPECTJ) 不起作用

json - MongoDB 文档 : empty value or omit pair altogether?

json - 尝试读取 JSON 时函数体外部的非声明语句