报表技术之Excel格式报表生成(POI)
2018-01-06 18:41
513 查看
报表技术之Excel格式报表生成(POI)
1.找到你的页面的导出Excel的按钮2.给导出按钮添加事件
3. 编写 ReportAction 添加 exportXls 方法
POI 生成 Excel 步骤写 Excel 过程一样,新建 Excel 文档 –新建 Sheet – 新建 Row –
新建 Cell 单元格 – 写单元格数据
POI 生成 HSSF (xls)和 XSSF (xlsx)
//导出Excel报表 @Action(value = "report_exportXls") public String exportXls() throws IOException { //查出满足条件的数据 List<WayBill> wayBills = wayBillService.findWayBills(model); //生成Excel // HSSFWorkbook hssfWorkbook = new HSSFWorkbook(); // HSSFSheet sheet = hssfWorkbook.createSheet("运单数据"); //创建工作簿 XSSFWorkbook xssfWorkbook = new XSSFWorkbook(); XSSFSheet sheet = xssfWorkbook.createSheet("运单数据"); //创建Row XSSFRow row = sheet.createRow(0); row.createCell(0).setCellValue("运单号"); row.createCell(1).setCellValue("寄件人"); row.createCell(2).setCellValue("寄件人电话"); row.createCell(3).setCellValue("寄件人地址"); row.createCell(4).setCellValue("收件人"); row.createCell(5).setCellValue("收件人电话"); row.createCell(6).setCellValue("收件人地址"); for (WayBill wayBill : wayBills) { XSSFRow xssfRow = sheet.createRow(sheet.getLastRowNum()+1); xssfRow.createCell(0).setCellValue(wayBill.getWayBillNum()); xssfRow.createCell(1).setCellValue(wayBill.getSendName()); xssfRow.createCell(2).setCellValue(wayBill.getSendMobile()); xssfRow.createCell(3).setCellValue(wayBill.getSendAddress()); xssfRow.createCell(4).setCellValue(wayBill.getRecName()); xssfRow.createCell(5).setCellValue(wayBill.getRecMobile()); xssfRow.createCell(6).setCellValue(wayBill.getRecAddress()); } //下载导出 //设置头信息 ServletActionContext.getResponse().setContentType("application/vnd.ms-excel"); String filename = "运单数据.xlsx"; String agent = ServletActionContext.getRequest().getHeader("user-agent"); filename = FileUtils.encodeDownloadFilename(filename, agent); //处理中文乱码 //String filename = new String(filename.getBytes(),"ISO-8859-1"); ServletActionContext.getResponse().setHeader("Content-Disposition", "attachment;filename="+filename); ServletOutputStream outputStream = ServletActionContext.getResponse().getOutputStream(); xssfWorkbook.write(outputStream); //关闭 xssfWorkbook.close(); return NONE; }
4.编写Service代码
无条件查询所有数据不分页
有条件,查询分页数据,第一页所有数据
结果展示
导出的Excel文件展示
相关文章推荐
- Excel 格式报表生成 POI
- Excel格式报表生成—POI
- POI+JFreeChart生成报表图片在Excel中的位置
- 简单OA项目笔记(5):生成、下载excel格式的动态表格(POI)
- 详解JAVA POI导出EXCEL报表的操作(包括各种格式及样式的实现)
- POI 生成 Excel条件格式的问题
- 使用POI生成Excel报表
- 详解JAVA POI导出EXCEL报表的操作(包括各种格式及样式的实现)
- poi jxl 生成EXCEL 报表
- 借助POI实现Java生成并打印报表(Excel)
- POI生成excel报表
- 报表技术之PDF格式报表生成 (JasperResport)
- 使用POI生成Excel报表
- 用POI加载模板生成excel报表
- POI技术之生成Excel
- poi 读取Excel文件模板生成报表文件
- poi excel报表生成的流程和例子
- JSP中将数据生成Excel格式 POI
- 10、借助POI实现Java生成并打印excel报表(1)
- jfreechart,pdf生成组件iText,jasper report报表组件及POI操作excel等在企业软件开发中常遇到的第三方应用