PIO
网站:http://poi.apache.org/
- POI是指通过java来控制Excel,word,viso等软件来输出想要的文档
- 目前主要使用PIO 来生成excel文档,其他的没什么用没有去了解
- 简单的写了一个例子(就测试了一个样式/(ㄒoㄒ)/~~)
//1.获取要导出的数据
ProdService prodService = BasicFactory.getFactory().getInstance(ProdService.class);
List<Product> prods = prodService.findAll();
//2.创建工作簿对象
Workbook wb = new XSSFWorkbook();
//2.1创建字体
Font f1 = wb.createFont();
f1.setColor(Font.COLOR_RED);
//2.2创建的单元格风格
CellStyle cs= wb.createCellStyle();
//将字体设置到风格上
cs.setFont(f1);
//3.创建工作表空间对象
Sheet sheet = wb.createSheet("SaleList");
//4.设置行
Row row = null;
row = sheet.createRow(0);
//4.1设置首行的信息
row.createCell(0).setCellValue("id");
row.createCell(1).setCellValue("name");
row.createCell(2).setCellValue("price");
//5.遍历集合
for (int i = 0; i < prods.size(); i++) {
Product prod = prods.get(i);
row = sheet.createRow(1 + i);
row.createCell(0).setCellValue(prod.getId());
row.createCell(1).setCellValue(prod.getName());
//6.将单元格内的风格设置上
Cell cell=row.createCell(2);
cell.setCellValue(prod.getPrice());
cell.setCellStyle(cs);
}
//输出文件
FileOutputStream fos = new FileOutputStream("test.xlsx");
//关流
wb.write(fos);
fos.close();
图片效果(红色为设置的样式字体)
总结
- 个人感觉操作起来挺复杂的(没接触过的话),生成逻辑简单的报表很容易
- POI的功能很强大,可以完成字体颜色/字体大小/字体种类/单元格背景/单元格大小/单元格样式/表格样式/合并单元格/居中显示/复杂的函数计算/等等
- 目前基本了解下如何操作吧,以后需要使用自己也算知道有这么个东西