问题描述
我有一个API,该API以以下格式返回JSON。需要为相同的类设计Java。这些值将有所不同。因此,不能创建具有固定属性的java类。 JSON为:
{
"jan": {
"2020-01-01": {
"A": 348,"B": 408
},"2020-01-02": {
"A": 348,"B": 408
}
},"feb": {
"2020-02-01": {
"A": 348,"2020-02-02": {
"A": 348,"B": 408
}
}
}
如何为此在Spring Boot / Java中设计对象?
解决方法
我了解您正在寻找一个Java类来反序列化您共享的JSON结构。在我看来,这是
Map<String,Map<String,Data>>
哪里
class Data {
private int A;
private int B;
}
现在,如果要使用杰克逊等反序列化,则可以使用
new ObjectMapper().readValue(myJson,new TypeReference<Map<String,Data>>>() {});