【发布时间】:2015-12-21 02:33:37
【问题描述】:
我对 JSON 很陌生,我环顾四周试图弄清楚该怎么做,但不确定我是否完全理解。我正在做一个外部 API 调用返回:
2015-12-21 01:22:09 INFO RiotURLSender:60 - Total json:
{"USERNAME":{"profileIconId":984,"revisionDate":1450655430000,"name":"USERNAME2","id":38584682,"summonerLevel":30}}
“USERNAME”(以及 USERNAME2 - 与 USERNAME 可能略有不同)的位置将根据您传递调用参数的内容而有所不同。我正在使用 Jackson Object Mapper 来映射 USERNAME 对象中的各个值 - 但没有意识到我也必须映射该对象。
我一直在 DTO 中使用注释,例如:
@JsonProperty("profileIconId")
private Long profileIconId;
和映射使用:
summonerRankedInfoDTO = mapper.readValue(jsonString, SummonerRankedInfoDTO.class);
如何使用每次都更改的 USERNAME 值进行映射?
这似乎有点奇怪,拥有实际变化的键而不是仅仅具有相同的键和不同的值,这是不好的做法吗?
谢谢
【问题讨论】: