我正在尝试将地图值添加到我的方案列表中,如下所示。
我有select语句返回列和行的n-no,我将它们存储到String类型的Hash Map列表中,并将其传递给其他方法以从结果中生成EXCEL文件。
我无法在列表中看到任何数据
请告诉我哪里出错了。
while (result.next()) {
resultValues.put("PARTC_ID",result.getString("PARTC_ID"));
resultValues.put("FILE_NME",result.getString("FILE_NME"));
resultValues.put("LOC_ID",result.getString("LOC_ID"));
resultValues.put("CRTE_DTE",result.getString("CRTE_DTE"));
resultValues.put("CRTE_BY",result.getString("CRTE_BY"));
value.add(resultValues); resultValues.clear(); System.out.println(value);
}
答案 0 :(得分:1)
将地图添加到列表后,您将清除地图。因此Map引用都是相同的(并且为空)...我想你想做出这个改变 -
// resultValues.clear(); // No, if you need another Map... do this
resultValues = new HashMap<String, String>();
然后迭代你的值列表试试
for (HashMap<String, String> map : value) {
for (String key : map.keySet()) {
System.out.printf("key[%s] = %s\n", key, map.get(key));
}
}