您的位置:首页 > 其它

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

2017-05-05 15:04 155 查看
首先编写一个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);
即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息