今天遇到一个问题:在使用map存储从数据库里查询出的数据时一直就抛异常。
Map avg = null;
try{
Map param = new HashMap();
param.put("source_id", sourceId);
avg.put("avg_score",getGradeDao().getAvgGradeBySourceId(param));
avg.put("score_count",getGradeDao().getCountBySourceId(param));
param.put("type", "banshi");
avg.put("banshi_avg_score",getGradeDao().getAvgGradeBySourceId(param));
avg.put("banshi_score_count",getGradeDao().getCountBySourceId(param) );
}catch(Exception e){
log.error("出错", e);
}
主要的问题是初始化 map = null,
Map map = new HashMap():指在存储空间里开辟了HashMap()的存储空间,map指向这块存储空间,如果map指向null,则在map.put时不知道将key/value存储在哪个位置,抛异常。
本文介绍了一种在使用Map存储数据库查询结果时遇到的异常情况及其解决方案。主要原因是Map未正确初始化导致为null,在尝试put操作时引发异常。文章详细解释了Map的工作原理,并给出了正确的初始化方法。

被折叠的 条评论
为什么被折叠?



