创建一个servlet:代码如下
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { List<User> dataset = new ArrayList<User>(); User u = new User(); u.setId("aaa"); u.setRealname("aaaadddd"); u.setPassword("123456"); User u2 = new User(); u2.setId("aaa555555555"); u2.setRealname("aaaaddddf"); u2.setPassword("123456566"); dataset.add(u); dataset.add(u2); // List<Map<String,String>> dataset = new ArrayList<Map<String,String>>(); // Map<String,String> m1 = new HashMap<String, String>(); // m1.put("id","aaaa"); // m1.put("realname", "aaaadddd"); // m1.put("password", "ddddd"); // // Map<String,String> m2 = new HashMap<String, String>(); // m2.put("id","aaa555555555"); // m2.put("realname", "123456566"); // m2.put("password", "aaaaddddf"); // // userBankCardList.add(m1); // userBankCardList.add(m2); HSSFWorkbook workbook = genHSSFWorkBook(genTableHead(),dataset); ServletOutputStream sos = null; try{ response.reset(); sos = response.getOutputStream(); workbook.write(sos); response.setContentType("application/octet-stream;charset=UTF-8"); response.setHeader("Content-Disposition","attachment; filename="+ URLEncoder.encode("测试导出.xlsx", "utf-8")); // response.setHeader("Pragma", "public"); // response.setHeader("Cache-Control","public"); }catch(Exception e){ e.printStackTrace(); }finally{ sos.flush(); sos.close(); } } //生成Excel // public HSSFWorkbook genHSSFWorkBook(Map<String, String> map,List<Map<String,String>> userBankCardList) { public HSSFWorkbook genHSSFWorkBook(Map<String, String> map,List<User> dataset) { // 声明一个工作薄 HSSFWorkbook workbook = new HSSFWorkbook(); // 生成一个表格 - sheet页的名称 HSSFSheet sheet = workbook.createSheet("用户银行卡导出"); // 设置表格默认列宽度为15个字节 sheet.setDefaultColumnWidth(15); // 产生表格标题行 下标从0开始 HSSFRow row = sheet.createRow(0); List<String> list = Arrays.asList(map.keySet().toArray(new String[map.keySet().size()])); for (int i = 0; i <list.size(); i++){ HSSFCell cell = row.createCell(i); cell.setCellValue(list.get(i)); } for(int i=0;i<dataset.size();i++){ row = sheet.createRow(i+1); List<String> fileNameList = Arrays.asList(map.values().toArray(new String[map.values().size()])); for (int j = 0; j < fileNameList.size(); j++){ HSSFCell cell = row.createCell(j); String value = null; try{ value = BeanUtils.getProperty(dataset.get(i), fileNameList.get(j)); //value = dataset.get(i).get(fileNameList.get(j)); }catch (Exception e){ e.printStackTrace(); value=null; System.out.println("++++++++++++值获取失败字段+++++++++++" + fileNameList.get(j)); } cell.setCellValue(value); } } System.out.println("++++++++++++写入成功+++++++++++" + dataset.size()); return workbook; } //自定义的表头和字段必须与一一对应 private Map<String, String> genTableHead() { Map<String,String> map = new LinkedHashMap<String,String>(); map.put("用户ID","id"); map.put("真实姓名", "realname"); map.put("身份证号", "password"); return map; } //内部类User class User implements Serializable{ private static final long serialVersionUID = 1L; private String id; private String realname; private String password; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getRealname() { return realname; } public void setRealname(String realname) { this.realname = realname; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } } }
使用jar包:pio-3.8-20120326.jar
参考地址:
*** https://blog.csdn.net/jimmy609/article/details/41038537
http://blog.csdn.net/evangel_z/article/details/7332535
http://download.csdn.net/detail/evangel_z/3895051
http://www.open-open.com/lib/view/open1429847388213.html
相关推荐
本资源实现了Excel的简单导出实例,同时也实现了导出Excel复合表头的简单实例,适合一些需要用到导出Excel技术的初学者。
一种很简单的将JSP页面的table导出excel的方法
struts2中利用poi导出excel的简单例子
本文实例讲述了PHP实现导出excel数据的类库用法,结合实例形式分析了php操作Excel数据的读取与导出操作相关实现技巧,需要的朋友可以参考下,类写的很简单,但很实用。只能简单的导出字符串和数字二种格式。
简单易用,一看就会,POI导出EXCEL经典实现!
Java POI 导入导出Excel简单实例源代码 该源代码的jar包,参见以下博文附录截图 Java POI导出EXCEL经典实现 Java导出Excel弹出下载框 http://blog.csdn.net/evangel_z/article/details/7332535 web页面导出Excel...
用Java语言采用接口设计模式、代理设计模式、工厂设计模式实现对excel中的表实现基本的...使用Java内置的poi jar包实现excel的操作,使用工厂模式、DAO设计模式等,思想很简单,可供设计模式参考,包括代码+文档+jar包
自定义的一个excel文件导入导出类,支持Excel2003到2010的格式。里面也有简单的配置文件的创建。
使用注解方式,在实体属性的get方法上添加注解,实现简单的excel表格导出功能
导出列表控件内容项到Excel文件简单实现导出列表控件内容项到Excel文件简单实现导出列表控件内容项到Excel文件简单实现
简单的jsp+servlet实现把xlsx(excel,07版之前为xlsx,之后为xls,xls用HSSFWorkBook)数据导入到mysql,并导出
java操作Excel\Web应用导出Excel报表的简单实现 .htm
使用jxl方式实现Excel表格导出,非常简单而且实用
前端导出excel,所见即所得,可以设置不导出列,可以设置不导出列,可以设置不导出列,简单方便,注释详细
本文实例讲述了PHP实现导出excel数据的类库用法,结合实例形式分析了php操作Excel数据的读取与导出操作相关实现技巧,需要的朋友可以参考下,类写的很简单,但很实用。只能简单的导出字符串和数字二种格式。
jxls使用简单,只需定义一个excel模板,在excel中使用jx公式即可轻松实现,具体可查看项目,运行Application.java的main方法即可启动项目,访问htpp://localhost:8080/member/user/userExport即可导出数据生成excel...
基于springmvc+hibernate框架实现对mysql数据库的简单操作,并通过java+poi技术实现导出excel
程序使用SQL语句实现mysql简单导出EXCEL。@易语言学习。
jsp+Servlet实现的最简单的Excel表导入导出数据库的操作
C# NPOI 导出Excel成DataTable,安装NPOI后,只需要传入开始行,总列数就可以把Excel中的数据读取成DataTable,使用方便,代码简单易懂