在帮别人写一个档案管理系统时需要用到将数据导出为Excel表
下面是用poi实现的一个导出Excel的servlet,导出Excel文件时使用了一个Excel模板template.xls,达到规范格式的目的。
导入poi-3.0.2-FINAL-20080204.jar包就可使用。
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("APPLICATION/OCTET-STREAM"); //response设置ContentType响应文档类型
String name=request.getParameter("name");
response.setHeader("Content-Disposition","attachment;fileName=mulu.xls"); //设置请求头fileName是保存文件名
List<MuLu> mulus=dao.getMuLuByName(name); //从数据库里取出目录表内容
String path=request.getRealPath("/"); //取得当前路径
POIFSFileSystem fs=new POIFSFileSystem(new FileInputStream(path+"template.xls")); //读取Excel模版
HSSFWorkbook wb=new HSSFWorkbook(fs); //创建一个工作区 HSSFWorkbook类表示一个工作区
HSSFSheet sheet = wb.getSheetAt(0); //创建一个表 HSSFSheet类表示一个表
HSSFCellStyle style = wb.createCellStyle(); //创建单元格样式 HSSFCellStyle类表示样式
style.setVerticalAlignment(style.VERTICAL_CENTER); //设置垂直居中
for(int i=2;i<mulus.size()+2;i++){
HSSFRow row = sheet.createRow(i); //创建一行 HSSFRow表示一行
row.setHeightInPoints(24); //设置行高
MuLu ml=mulus.get(i-2); //取出表项
HSSFCell cell0=row.createCell((short)0); //创建一个单元格 HSSFCell类表示单元格
cell0.setCellValue(ml.getSxh()); //设置单元格内容
cell0.setCellStyle(style); //设置单元格样式
HSSFCell cell1=row.createCell((short)1);
cell1.setCellValue(ml.getWh());
cell1.setCellStyle(style);
HSSFCell cell2=row.createCell((short)2);
cell2.setCellValue(ml.getZrz());
cell2.setCellStyle(style);
HSSFCell cell3=row.createCell((short)3);
cell3.setCellValue(ml.getTm());
cell3.setCellStyle(style);
HSSFCell cell4=row.createCell((short)4);
cell4.setCellValue(ml.getRq());
cell4.setCellStyle(style);
HSSFCell cell5=row.createCell((short)5);
if(ml.getYh()!=0){
cell5.setCellValue(ml.getYh());
cell5.setCellStyle(style);
}
HSSFCell cell6=row.createCell((short)6);
cell6.setCellValue(ml.getBz());
cell6.setCellStyle(style);
}
try {
wb.write(response.getOutputStream()); //将excel写入response的输出流中
response.getOutputStream().flush(); //刷新IO
response.getOutputStream().close(); //关闭IO
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
分享到:
相关推荐
使用POI筛选字段导出Excel,以及条件查询和指定数据导出
在本案例中,我们关注的是如何使用 Apache POI 库来导出 Excel 文件,特别是根据模板导出和简单列表导出。下面将详细介绍这个过程。 1. **Apache POI 概述** Apache POI 提供了 Java API 来读写 Microsoft Office ...
在这里,我们结合这两个技术,通过Struts1控制器来调用POI功能,将数据库中的数据导出为Excel文件。 要实现这个功能,我们需要以下步骤: 1. **准备数据库连接**:首先,我们需要建立与数据库的连接。这通常通过...
POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI导出POI...
在本项目中,"SpringBootMybatis+poi+Thymeleaf实现excel文件数据导入到数据库以及从数据库将数据导出成excel.zip",我们主要关注的是如何利用Java技术栈来处理Excel文件,并与数据库进行交互。以下是相关知识点的...
标题中的“用POI把数据导出为Excel”是指使用Apache POI库来创建和操作Microsoft Excel文件。Apache POI是Java中一个流行的开源库,它允许开发者读取、写入和修改MS Office格式的文件,包括Excel。在这个场景中,...
以下是一个简化的示例,演示了如何使用POI导出Excel: ```java import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import java.io.FileOutputStream; import java.io....
同时,提及的“使用方法见com.teacherInfo.export.test.Test”,意味着在提供的代码示例中,你可以找到一个名为Test的测试类,这个类中包含了如何使用POI进行数据导出的具体步骤和逻辑。 “提供依赖的POI开发包”...
本文将详细介绍如何使用 POI 结合模板文件生成 Excel,并通过示例代码具体展示每一步的操作。 #### 第一步:设置 Excel 模板路径 (setSrcPath) ```java public void setSrcPath(String srcXlsPath) { this....
七、导出Excel文件 最后,将Workbook写入OutputStream或File,完成导出: ```java try (FileOutputStream out = new FileOutputStream("output.xlsx")) { workbook.write(out); } catch (IOException e) { e....
在IT行业中,处理大数据量的Excel文件是一项挑战,特别是在数据导出时,如果单线程操作,可能会导致性能瓶颈和长时间的等待。Apache POI是一个流行的Java库,它允许开发者创建、修改和显示Microsoft Office格式的...
今天,我们将介绍如何使用Java POI将图片导出到Excel中。 标题解释 Java POI导出图片到Excel示例代码,标题表明了本文的主要内容,即使用Java POI将图片导出到Excel中。 描述解释 描述中提到了本文的主要内容,...
在这个特定的例子中,我们将讨论如何使用POI库基于一个Excel模板文件循环输出数据行,并将结果导出为新的Excel文件。 首先,我们需要理解POI库的基本概念。POI提供了HSSF(Horizontally SpreadSheet Format)和XSSF...
在本文中,我们将详细介绍如何使用 Java POI 实现 Excel 导入导出功能。 1. 什么是 Java POI Java POI 是一个开源的 Java 库,由 Apache 软件基金会维护。它提供了一系列的 API,用于处理 Microsoft Office 文件...
在Android开发中,有时我们需要将应用中的数据导出到Excel文件,以便用户可以方便地查看、编辑或分享。本文将详细介绍如何在Android中实现这一功能,主要涉及的技术点包括文件操作、数据序列化以及第三方库的使用。 ...
解决poi大数据量导出excel的代码,该代码中所用的jar包是poi3.9。在测试过程中单个sheet中导出20万数据没有问题。
总结来说,Java通过Apache POI库提供了强大的Excel操作能力,使开发者可以方便地将数据导出到Excel文件中。理解并掌握这一技能对于任何进行Java开发的人来说都是十分有用的。通过实践和不断探索,你可以创建更复杂的...
"使用POI导出大数据量到EXCEL"这个主题涉及到如何高效地利用POI处理大量数据并将其导出到Excel文件中。以下是对这个主题的详细讲解。 1. **Apache POI简介** Apache POI 是一个开源项目,它提供了Java API来创建、...
通过以上步骤,你可以构建一个功能完善的、使用Apache POI从数据库导出Excel的系统,使用户能够方便地从网页下载他们需要的数据。这个过程涉及到数据库操作、Java对象映射、文件流处理等多个技术点,是Java Web开发...
这样就实现了基于模板的Excel数据导出。 通过这种方式,开发者可以创建复杂的Excel报告,只需维护一个模板文件,而数据的动态插入使得程序更具灵活性。在实际应用中,还可以结合数据库查询结果,实现批量数据的导出...