簡體   English   中英

使用JSON解析列表后,對象為空

[英]Objects are empty after parsing list with JSON

我目前正在嘗試使用GSON解析一些JSON-Data:

[{
  "lvTypePathStr":  "teamList",
  "lvIDPathStr":    "155213",
  "lvTypeLabelStr": "\/ HSG Pinnau",

  "dataList": [{
    "lvTypeNext":     "",
    "lvIDNext":       0,
    "levelTypeLabel": "",
    "teamID":         "353197",
    "gClassID":       "22566",
    "gClassSname":    "M-HL",
    "clubSname":      "HSG Pinnau",
    "clubLname":      "HSG Pinnau",
    "teamSname":      "HSG Pinnau"
  }, {
    "lvTypeNext":     "",
    "lvIDNext":       0,
    "levelTypeLabel": "",
    "teamID":         "353226",
    "gClassID":       "22569",
    "gClassSname":    "M-BL-1",
    "clubSname":      "HSG Pinnau",
    "clubLname":      "HSG Pinnau",
    "teamSname":      "HSG Pinnau 2"
  }],
  "errCode": 0
}]

相應的對象是:
容納所有隊伍的名單:

public class JSONTeamList extends JSONResponse {


private List<JSONTeam> dataList = new ArrayList<JSONTeam>();

public List<JSONTeam> getDataList() {
    return dataList;
}

public void setDataList(List<JSONTeam> dataList) {
    this.dataList = dataList;
}

從JSONResponse繼承僅用於常見屬性:

public class JSONResponse {

protected String lvTypePathStr;
protected String lvIDPathStr;
protected String lvTypeLabelStr;
protected int errorCode;

/** ... getter and setter for all attributes ... */
}

最后是車隊本身:

public class JSONTeam {

private String lvTypeNext;
private int lvIDNext;
private String levelTypeLabel;
private String teamID;
private String gClassID;
private String gClassSName;
private String clubSName;
private String clubLName;
private String teamSName;

/** Getter and setter for all attributes... */
}

為了更好的可讀性,我省略了getter和setter,但是它們是使用IntelliJ自動生成的,格式通常為get {variable}和set {variable}。

解析代碼為:

URL url = new URL(baseURL + clubId);
URLConnection con = url.openConnection();
Reader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
JSONTeamList[] list = gson.fromJson(in, JSONTeamList[].class);

現在,當我解析JSON時,會得到一個Teamlist,其中填充了團隊,但團隊中的所有屬性均為空。 我遇到了這個問題,但我認為它不適合這種情況,因為這是一個嵌套列表。 我錯過了什么讓GSON正確填充團隊?

在此先感謝,Sverre

問題解決了,變量名中的大寫字母是錯誤的,例如gClassSname是變量gClassSName但應該是gClassSname
我花了兩個小時才意識到這是如此簡單...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM