一對多關係是前端展示數據問題

經常在對數據列表,數據位json形式,map形式等問題蒙圈。而且當出現一對多關係,一也爲列表多也是列表以及一位一條對應實體和多爲列表問題時也是在疑惑,如一個問題多個答案展示在頁面爲列表以及修改單條問題答案時。首先返回json形式的字符串,然後聲明爲json對象,遍歷json對象插入對應的實體中。前端顯示列表時後算同時返回這兩條列表,對應關係爲多種有一的id值if顯示

String str = this.HttpParams("/question/manage", params);
JSONObject json = new JSONObject().fromObject(str);
List<Questionnaire> quesnaire = new ArrayList<Questionnaire>();
List<Answer> alist = new ArrayList<Answer>();
String question = json.getString("json");

JSONArray json2 = new JSONArray().fromObject(question);
for(int i = 0;i < json2.size();i++) {
JSONObject json3 = (JSONObject) json2.get(i);
Questionnaire naire = new Questionnaire();
// naire.setAnid(json3.getString("ANID"));
naire.setQuestion(json3.getString("question"));
naire.setQid(json3.getInt("qid"));
String answer = json3.getString("answer");
JSONArray json4 = new JSONArray().fromObject(answer);
for(int j = 0;j < json4.size();j++) {
Answer a = new Answer();
JSONObject ajson = (JSONObject) json4.get(j);
a.setAnid(ajson.getInt("anid"));
a.setAnswer(ajson.getString("answer"));
a.setScore(ajson.getString("score"));
a.setQid(Integer.parseInt(ajson.getString("qid")));
a.setType(ajson.getString("type"));
alist.add(a);
}

//
quesnaire.add(naire);
}
setAttr("qlist",quesnaire);
setAttr("alist",alist);
}catch(Exception e) {
e.printStackTrace();
}
this.tabsAction();
}

以上爲列表顯示,如果是修改則把一的列表對象改爲實體對象便可!!!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章