まったく一致しない JSON から POJO を作成しようとしていますが、これを解決するのに問題があります。JSON は外部サービスであるため変更できませんが、必要に応じて POJO を変更できる可能性があります。
以下は JSON の例です。
{"Sparse":[{"PixId":1,"PixName":"SWE","Description":"Unknown"},{"PixId":2,"PixName":"PUMNW","Description":"Power Supplement"}],"Status":0,"Message":null}
以下は POJO です。
@JsonIgnoreProperties(ignoreUnknown = true)
public class Pix {
@JsonProperty("Description")
private String description;
@JsonProperty("PixId")
private int pixId;
@JsonProperty("PixName")
private String pixName;
// getters and setters
}
そして、変換を行うための私のコードは次のとおりです。
ObjectMapper om = new ObjectMapper();
om.configure(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY, true);
om.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, false);
List<Pix> pixList = om.readValue(pixJson, new TypeReference<List<Pix>>() {});
pixList には 1 つの要素 (上記の JSON を使用すると 2 である必要があります) のみが含まれ、すべてのプロパティは設定されていません。Jackson 1.9.9 を使用しています。これを機能させる方法についてのアイデアはありますか? ティア。