1
Java에서 Java로 JSON 객체를 비 직렬화하려고합니다. JSON 스트림의 각 팀을 팀 객체에 넣고 싶습니다.Java에서 Jackson으로 Json 객체를 비 직렬화
다음은 JSON이다 : 나는 POJO JsonRequestResult
만든
{
"resource": "commonteamyears",
"parameters": {
"LeagueID": "00"
},
"resultSets": [
{
"name": "TeamYears",
"headers": [
"LEAGUE_ID",
"TEAM_ID",
"MIN_YEAR",
"MAX_YEAR",
"ABBREVIATION"
],
"rowSet": [
[
"00",
1610612737,
"1949",
"2015",
"ATL"
],
[
"00",
1610612738,
"1946",
"2015",
"BOS"
],
[
"00",
1610612739,
"1970",
"2015",
"CLE"
],
[
"00",
1610612740,
"2002",
"2015",
"NOP"
],
[
"00",
1610612741,
"1966",
"2015",
"CHI"
],
[
"00",
1610612742,
"1980",
"2015",
"DAL"
],
[
"00",
1610612743,
"1976",
"2015",
"DEN"
],
[
"00",
1610612744,
"1946",
"2015",
"GSW"
],
[
"00",
1610612745,
"1967",
"2015",
"HOU"
],
[
"00",
1610612746,
"1970",
"2015",
"LAC"
],
[
"00",
1610612747,
"1948",
"2015",
"LAL"
],
[
"00",
1610612748,
"1988",
"2015",
"MIA"
],
[
"00",
1610612749,
"1968",
"2015",
"MIL"
],
[
"00",
1610612750,
"1989",
"2015",
"MIN"
],
[
"00",
1610612751,
"1976",
"2015",
"BKN"
],
[
"00",
1610612752,
"1946",
"2015",
"NYK"
],
[
"00",
1610612753,
"1989",
"2015",
"ORL"
],
[
"00",
1610612754,
"1976",
"2015",
"IND"
],
[
"00",
1610612755,
"1949",
"2015",
"PHI"
],
[
"00",
1610612756,
"1968",
"2015",
"PHX"
],
[
"00",
1610612757,
"1970",
"2015",
"POR"
],
[
"00",
1610612758,
"1948",
"2015",
"SAC"
],
[
"00",
1610612759,
"1976",
"2015",
"SAS"
],
[
"00",
1610612760,
"1967",
"2015",
"OKC"
],
[
"00",
1610612761,
"1995",
"2015",
"TOR"
],
[
"00",
1610612763,
"1995",
"2015",
"MEM"
],
[
"00",
1610612764,
"1961",
"2015",
"WAS"
],
[
"00",
1610612765,
"1948",
"2015",
"DET"
],
[
"00",
1610612766,
"1988",
"2015",
"CHA"
],
[
"00",
1610612762,
"1974",
"2015",
"UTA"
],
[
"00",
1610610029,
"1948",
"1948",
null
],
[
"00",
1610610025,
"1946",
"1949",
null
],
[
"00",
1610610034,
"1946",
"1949",
null
],
[
"00",
1610610036,
"1946",
"1950",
null
],
[
"00",
1610610024,
"1947",
"1954",
null
],
[
"00",
1610610027,
"1949",
"1949",
null
],
[
"00",
1610610030,
"1949",
"1952",
null
],
[
"00",
1610610033,
"1949",
"1949",
null
],
[
"00",
1610610037,
"1949",
"1949",
null
],
[
"00",
1610610031,
"1946",
"1946",
null
],
[
"00",
1610610023,
"1949",
"1949",
null
],
[
"00",
1610610028,
"1946",
"1946",
null
],
[
"00",
1610610026,
"1946",
"1946",
null
],
[
"00",
1610610032,
"1946",
"1948",
null
],
[
"00",
1610610035,
"1946",
"1946",
null
]
]
}
]
}
나는 세 개의 매개 변수를 얻을 수 있습니다 : 자원 매개 변수와 결과 집합. 하지만 여기서부터는 resultSets
에있는 데이터에 액세스하는 방법을 모르겠습니다. 내 수업 JsonRequestResult
이야 여기
public static void main(String[] args) throws JsonParseException, JsonMappingException, MalformedURLException, IOException {
ObjectMapper objectMapper = new ObjectMapper();
JsonRequestResult jrr = objectMapper.readValue(new URL("http://stats.nba.com/stats/commonteamyears/?LeagueID=00"), JsonRequestResult.class);
System.out.println(jrr.getResource());
System.out.println(jrr.getParameters());
System.out.println(jrr.getResultSets());
}
그리고 :
public class JsonRequestResult {
private String resource;
private Object parameters;
private Object[] resultSets;
}
나는 당신이 무엇을 요구하고 있는지 이해하지 못합니다. 받는 개체가 비어 있거나 null입니까? 다른 말로하면, 우리가 당신의 프로그램의 결과물을 보여 주면 어떨까요? 당신의 기대에서 벗어나는 곳을 말해 주시겠습니까? – GhostCat
[Java 객체를 Jackson과 JSON으로 변환] 가능한 복제본 (0120-336-005) – Casey
분명히 알지 못합니다. 내 Json 스트림에 해당하는 객체 Java를 작성하기 위해 작성해야하는 것. – StYoukii