List<Map<String, Object>> list = interviewRecordDAO.totalCompanyForTeacherAll(paramMap);
// 第一步,创建一个webbook,对应一个Excel文件
HSSFWorkbook wb = new HSSFWorkbook();
// 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
HSSFSheet sheet = wb.createSheet("走访统计表");
// 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
HSSFRow row = sheet.createRow((int) 0);
// 第四步,创建单元格,并设置值表头 设置表头居中
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
HSSFCell cell = row.createCell((short) 0);
cell.setCellValue("序号");
cell.setCellStyle(style);
cell = row.createCell((short) 1);
cell.setCellValue("姓名");
cell.setCellStyle(style);
cell = row.createCell((short) 2);
cell.setCellValue("走访企业数量");
cell.setCellStyle(style);
// 第五步,写入实体数据 实际应用中这些数据从数据库得到,
for (int i = 0; i < list.size(); i++) {
row = sheet.createRow((int) i + 1);
Map<String, Object> map = list.get(i);
// 第四步,创建单元格,并设置值
row.createCell((short) 0).setCellValue((i+1));
Object jszgh = map.get("jszgh");
if (jszgh != null && !"".equals(jszgh)) {
List<User> list1 = getListByCondtion(null, String.valueOf(jszgh), null);
row.createCell((short) 1).setCellValue(list1.get(0).getSn());
}
row.createCell((short) 2).setCellValue(String.valueOf(map.get("companycount")));
}
// 第六步,将文件存到指定位置
BufferedOutputStream bos = null;
try{
response.setContentType("application/msexcel;charset=UTF-8");
response.setHeader("Content-Disposition", "attachment;filename=\"interview.xls\"");
bos = new BufferedOutputStream(response.getOutputStream());
wb.write(bos);
} catch (Exception e){
e.printStackTrace();
}finally{
if (bos != null)
bos.close();
}
return null;
}
// 第一步,创建一个webbook,对应一个Excel文件
HSSFWorkbook wb = new HSSFWorkbook();
// 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
HSSFSheet sheet = wb.createSheet("走访统计表");
// 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
HSSFRow row = sheet.createRow((int) 0);
// 第四步,创建单元格,并设置值表头 设置表头居中
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
HSSFCell cell = row.createCell((short) 0);
cell.setCellValue("序号");
cell.setCellStyle(style);
cell = row.createCell((short) 1);
cell.setCellValue("姓名");
cell.setCellStyle(style);
cell = row.createCell((short) 2);
cell.setCellValue("走访企业数量");
cell.setCellStyle(style);
// 第五步,写入实体数据 实际应用中这些数据从数据库得到,
for (int i = 0; i < list.size(); i++) {
row = sheet.createRow((int) i + 1);
Map<String, Object> map = list.get(i);
// 第四步,创建单元格,并设置值
row.createCell((short) 0).setCellValue((i+1));
Object jszgh = map.get("jszgh");
if (jszgh != null && !"".equals(jszgh)) {
List<User> list1 = getListByCondtion(null, String.valueOf(jszgh), null);
row.createCell((short) 1).setCellValue(list1.get(0).getSn());
}
row.createCell((short) 2).setCellValue(String.valueOf(map.get("companycount")));
}
// 第六步,将文件存到指定位置
BufferedOutputStream bos = null;
try{
response.setContentType("application/msexcel;charset=UTF-8");
response.setHeader("Content-Disposition", "attachment;filename=\"interview.xls\"");
bos = new BufferedOutputStream(response.getOutputStream());
wb.write(bos);
} catch (Exception e){
e.printStackTrace();
}finally{
if (bos != null)
bos.close();
}
return null;
}