Apache POI 第五讲之利用POI 实现数据的批量导出
来源:互联网 发布:javaweb 大型项目 源码 编辑:程序博客网 时间:2024/05/22 16:51
有时候我们在做项目时,有些项目需要生成Microsoft Excel文件格式的报告。有时,甚至希望将Excel文件作为输入数据。这是我们需要用到Apache POI 。例如,一个公司开发的应用程序将财务部门需要所有输出生成自己的Excel。
利用 POI 实现数据的批量导出
1.编写导出工具类
public class ExcelUtil { public static void fillExcelData(ResultSet rs,Workbook wb,String[] headers)throws Exception{ int rowIndex=0; Sheet sheet=wb.createSheet(); Row row=sheet.createRow(rowIndex++); for(int i=0;i<headers.length;i++){ row.createCell(i).setCellValue(headers[i]); } while(rs.next()){ row=sheet.createRow(rowIndex++); for(int i=0;i<headers.length;i++){ row.createCell(i).setCellValue(rs.getObject(i+1).toString()); } } }}
public class ResponseUtil { public static void write(HttpServletResponse response,Object o)throws Exception{ response.setContentType("text/html;charset=utf-8"); PrintWriter out=response.getWriter(); out.print(o.toString()); out.flush(); out.close(); } public static void export(HttpServletResponse response,Workbook wb,String fileName)throws Exception{ response.setHeader("Content-Disposition", "attachment;filename="+new String(fileName.getBytes("utf-8"),"iso8859-1")); response.setContentType("application/ynd.ms-excel;charset=UTF-8"); OutputStream out=response.getOutputStream(); wb.write(out); out.flush(); out.close(); }}
2.编写action类导出方法
public String export()throws Exception{ Connection con=null; try { con=dbUtil.getCon(); Workbook wb=new HSSFWorkbook(); String headers[]={"编号","姓名","电话","Email","QQ"}; ResultSet rs=userDao.userList(con, null); ExcelUtil.fillExcelData(rs, wb, headers); ResponseUtil.export(ServletActionContext.getResponse(), wb, "导出excel.xls"); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ try { dbUtil.closeCon(con); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } return null; }
3.编写页面
function exportUser(){ window.open('user!export') ;}
5.查看结果
本实例用了easyui 与 struts2 ,无关紧要,简单的把相关POI代码粘贴出来,仅供参考。。
1 0
- Apache POI 第五讲之利用POI 实现数据的批量导出
- Apache POI 第六讲之利用Excel模板实现数据的批量导出
- Apache POI 第七讲之利用 POI 技术实现使用模板批量添加数据
- Apache POI实现数据的Excel导出
- POI批量导出数据
- 利用Apache POI 实现简单的Excel表格导出
- poi实现数据的导出
- Java利用POI实现数据的Excel导出
- java poi 实现Excel的批量导出
- 利用POI实现Excel的导入导出
- 利用poi-SXSSFWorkbook导出数据
- Apache POI实现导出EXcel
- POI:数据批量导出、按模板导出
- Apache POI实现数据的Excel导入
- 导入/导出Excel利用apache.poi
- Apache POI 第三讲之对Excel单元格的操作
- 利用poi实现页面上excel的导入和导出(不刷新页面)之导出
- 导出数据到Excel表中--用Apache的POI实现简单封装
- AndroidStudio如何"创建Assets资源目录"并访问目录下的文件?
- Bash下如何批量重命名文件添加前缀
- Bash下如何批量重命名、复制文件添加前缀
- UGUI文本字体颜色和大小等代码修改
- Python optparser库详解
- Apache POI 第五讲之利用POI 实现数据的批量导出
- Redis源码解析:29事务
- 利用二分查找法打印白名单中不存在的数据
- RUBY NOTES
- linux命令真是有点多,需要在linux平台多摸索一哈
- ext3日志模式---文件系统
- 7_4_O题 Heavy Transportation 题解[POJ 1797](Dijkstra变形)
- 关于命令行下java程序的jar打包与运行
- 修改iar工程,字体变化的解决方法