poi入门实例与实现response工单导出

来源:互联网 发布:java 0 true false 编辑:程序博客网 时间:2024/06/07 19:04

首先编写一个poi打印的简单入门实例:

import java.io.FileOutputStream;import org.apache.poi.hssf.usermodel.HSSFWorkbook;import org.apache.poi.ss.usermodel.Cell;import org.apache.poi.ss.usermodel.CellStyle;import org.apache.poi.ss.usermodel.Font;import org.apache.poi.ss.usermodel.Row;import org.apache.poi.ss.usermodel.Sheet;import org.apache.poi.ss.usermodel.Workbook;/** * 简单的poi报表打印类 * @author Administrator * */public class PoiDemo {public static void main(String[] args) {//创建工作薄Workbook wb = new HSSFWorkbook();//用工作薄对象创建单元格格式对象CellStyle cellStyle = wb.createCellStyle();//用工作薄对象设置字体Font font = wb.createFont();//设置单元格格式cellStyle.setFont(font);//创建工作表Sheet sheet = wb.createSheet();//创建行对象Row row = sheet.createRow(0);//创建单元格对象Cell cell = row.createCell(0);//设置单元格内容cell.setCellValue("第一个行 第一个单元格的值");//设置第二个单元格的值Cell cell2 = row.createCell(1);cell2.setCellValue("第一行 第二个单元格");//设置文件输出流try {FileOutputStream out = new FileOutputStream("e:\\a.xls");//将报表输出到指定的路径下wb.write(out);//关流out.close();System.out.println("报表打印结束");} catch (Exception e) {e.printStackTrace();}}}
具体的实现步骤如上所示,jar包需要在apach.org网站上自行下载。

关于设置单元格的样式,后续会进行补充。


下面介绍通过在线下载的方式实现表格的打印

实现方式是

1、点击按钮在后台触发事件。

2、在事件里面通过向response流里面进行写数据实现数据的导出。

3、注意不能发送ajax请求。

创建流的代码如下

OutputStream os = response.getOutputStream();// 取得输出流response.reset();// 清空输出流String filename = "XXX.xlsx";response.setContentType("application/msexcel");response.setHeader("Content-disposition", "attachment; filename="+ URLEncoder.encode(filename, "UTF-8"));
在创建了workbook之后将数据workbook.write(os);

即可。





1 0