java - 用 Java 设计 JSON
问题描述
我有一个以以下格式返回 JSON 的 API。需要为此设计Java类。这些值会有所不同。因此无法创建具有固定属性的 java 类。JSON 为:
{
"jan": {
"2020-01-01": {
"A": 348,
"B": 408
},
"2020-01-02": {
"A": 348,
"B": 408
}
},
"feb": {
"2020-02-01": {
"A": 348,
"B": 408
},
"2020-02-02": {
"A": 348,
"B": 408
}
}
}
如何为此在 Spring Boot/Java 中设计对象?
解决方案
我了解到您正在寻找一个用于反序列化您共享的 JSON 结构的 java 类。这在我看来像
Map<String, Map<String, Data>>
在哪里
class Data {
private int A;
private int B;
}
现在,如果您想使用例如 jackson 对其进行反序列化,您可以使用
new ObjectMapper().readValue(myJson, new TypeReference<Map<String, Map<String, Data>>>() {});
推荐阅读
- r - 将表格转换为 r 中的更多 html 或 csv 表格
- vue.js - 保持活动状态并且路由器视图不起作用?
- javascript - 在搜索中查询过滤器参数的嵌套数组
- animation - 如何在 ChildAdded 事件处理程序中错开 Xamarin Forms 动画?
- mysql - 如何将表连接到值而不是 mySQL 中的另一个表
- jquery - jquery 设置的一些 css 属性不会显示在 html 元素上
- azure - 是否有设置动态 Windows 虚拟桌面主机池负载平衡方法的解决方案?
- ruby-on-rails - 尝试使用全新应用程序运行 Rails 服务器后的 URI 问题
- pandas - 减少了带有条件记录的 Pandas 过滤器
- node.js - 不能 POST - 我的 POST 请求有什么问题?节点