나는 JSON 문자열 그런 식으로 얻을 :Gson을 사용하여이 JSON을 구문 분석 할 클래스를 정의하는 방법은 무엇입니까?
{
"cars": {
"ford": {
"length": 4460,
"weight": 1450
},
"jeep": {
"length": 4670,
"weight": 1880
},
"toyota": {
"length": 3830,
"weight": 1120
},
.
.
.
"audi": {
"length": 5288,
"weight": 2432
},
"subaru": {
"length": 4755,
"weight": 1790
},
"count": 128
}
}
내가 GSON를 사용하여이 JSON을 구문 분석하는 자바 클래스를 정의하려고합니다.
public class CarSize {
public int length;
public int weight;
}
public class JSONData {
public Map<String, CarSize> cars;
}
문제는 cars
그것은 "count":128
을 가지고 있으며, 128
는 CarSize
아닌, 순수한지도되지이다. JSON을 어떻게 파싱 할 수 있습니까?
JSON 소스 문자열을 수정할 수 없습니다. 그러나 나는 그것이 "Map<String, CarSize> cars
"의 크기라는 것을 알고 있기 때문에 "count"속성을 무시하는 것이 좋습니다.
Alex. 감사합니다. 하지만 저는 Gson을 사용하고 있습니다. Gson에는'ObjectMapper '가 없습니다. –
내 잘못! 그러나 당신의 모델이 어떻게 정의되어야하는지에 관해서는 여전히 의문이 남아 있습니다. Gson으로 업데이트합니다. – alexbt
Gson의 경우 다음을 사용할 수 있습니다. Gson gson = new Gson(); 자동차 cars = gson.fromJson (json, Cars.class); // json은 json 문자열입니다. –