- 当然还可以用java8新特性,
- lists.stream().collect(
- Collectors.groupingBy(
- 实体, 分组的字段
- )
//方法一:
Map<String,List<Map<String,Object>>> TEMPLATE_MAPPING_DATA = new HashMap<String,List<Map<String,Object>>>();
String sql = "SELECT * FROM template_mapping";
List<Map<String, Object>> listmap = commonService.findForJdbc(sql);
for (Map<String, Object> map : listmap) {
String template_code = (String) map.get("template_code");
List<Map<String,Object>> listMap = TEMPLATE_MAPPING_DATA.get(template_code);//数据按模板编号分类
if(listMap == null){
listMap = new ArrayList<Map<String,Object>>();
TEMPLATE_MAPPING_DATA.put(template_code, listMap);
}
listMap.add(map);
}
//方法二:
for (Map<String, Object> map : listmap) {
//数据按模板编号分类
String template_code = (String) map.get("template_code");
if(!TEMPLATE_MAPPING_DATA.containsKey(template_code)){
List<Map<String,Object>> listMap = new ArrayList<Map<String,Object>>();
listMap.add(map);
TEMPLATE_MAPPING_DATA.put(template_code, listMap);
} else {
List<Map<String,Object>> listMap = TEMPLATE_MAPPING_DATA.get(template_code);
listMap.add(map);
TEMPLATE_MAPPING_DATA.put(template_code, listMap);
}
}