【发布时间】:2020-10-11 21:16:32
【问题描述】:
我想将下面的 JSON 响应反序列化为 Java 对象。
但字段 时间序列 的名称是动态的,例如可以是Time Series (5min)、Time Series (1min)、Time Series (15min) 等。
是否有任何注释或配置可以帮助将 JSON 反序列化为 POJO,而不管字段名称如何?
JSON 响应:
{
"Meta Data": {
"1. Information": "Intraday (5min) open, high, low, close prices and volume",
"2. Symbol": "IBM",
"3. Last Refreshed": "2020-10-09 19:55:00",
"4. Interval": "5min",
"5. Output Size": "Compact",
"6. Time Zone": "US/Eastern"
},
"Time Series (5min)": {
"2020-10-09 19:55:00": {
"1. open": "127.7500",
"2. high": "127.7500",
"3. low": "127.7000",
"4. close": "127.7000",
"5. volume": "405"
},
"2020-10-09 19:45:00": {
"1. open": "127.7600",
"2. high": "127.7600",
"3. low": "127.7600",
"4. close": "127.7600",
"5. volume": "200"
}
}
}
用于 JSON 响应的 POJO:
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class IntraDayResponse {
@JsonProperty("Meta Data")
private Metadata metadata;
private Map<String, IntraDayData> timeSeries;
}
【问题讨论】:
标签: java json jackson deserialization