jxl早期只能对EXCEL操作
pol效率比较高
POL的学习
导出到excel功能
1、创建一个测试表
创建行、单元格
指定输出位置
easypoi的操作
通过在字段上添加注解导出类型
字符、图片、性别、时间格式
2、单一导出通过@ExcelTarget(指定导出部门名称或者成员)注解
3、添加按钮实现网页数据的导出
导入到数据库
easypoi验证功能
生成一个99乘法表 --导出
@Test
public void testPoiWrite99() throws Exception{
//创建一个工作薄
XSSFWorkbook workbook = new XSSFWorkbook();
//创建一个表格
XSSFSheet sheet = workbook.createSheet("99乘法表");
for (int i = 1; i <=9 ; i++) {
//9行 1*1
XSSFRow row = sheet.createRow(i-1);
for (int j = 1; j <= i ; j++) {
//创建一个单元格
XSSFCell cell = row.createCell(j-1);
cell.setCellValue(i+"*"+j+"="+(i*j));
}
}
//输出
FileOutputStream out = new FileOutputStream(
new File("99.xlsx"));
workbook.write(out);
out.close();
}
//导入的功能 目的:把empread这个文件读取程序里面 打印出来
@Test
public void testPoiRead() throws Exception{
//读取
FileInputStream fis = new FileInputStream(
new File("empread.xlsx"));
//得到工作薄
XSSFWorkbook workbook = new XSSFWorkbook(fis);
//得到第一个表格
XSSFSheet spreadsheet = workbook.getSheetAt(0);
//获取表格所有的row
Iterator <Row> rowIterator = spreadsheet.iterator();
int count = 0;
//循环行
while (rowIterator.hasNext()) {
count++;
//取出具体哪一个行
XSSFRow row = (XSSFRow) rowIterator.next(); //取出两行进行抛弃
if (count > 2) {
//得到单元格
Iterator<Cell> cellIterator = row.cellIterator();
while (cellIterator.hasNext()) {
//取出单元格
Cell cell = cellIterator.next();
//判断单元格类型
switch (cell.getCellType()) {
case Cell.CELL_TYPE_NUMERIC:
System.out.print(
cell.getNumericCellValue() + " \t\t ");
break;
case Cell.CELL_TYPE_STRING:
System.out.print(
cell.getStringCellValue() + " \t\t ");
break;
}
}
System.out.println();
}
}
fis.close();
}
}
easypoi的导出功能
@Test
public void testEasyuiPoi()throws Exception{
List<EasyEmployee> list = new ArrayList<>();
EasyEmployee easyEmployee = new EasyEmployee();
easyEmployee.setName("黑泽志玲");
easyEmployee.setAge(20);
//性别
easyEmployee.setSex(false);
easyEmployee.setBirthday(new Date());
//头像
easyEmployee.setHeadImage("1.jpg");
EasyEmployee easyEmployee2 = new EasyEmployee();
easyEmployee2.setName("黑泽玛利亚");
easyEmployee2.setAge(22);
//性别
easyEmployee2.setSex(false);
easyEmployee2.setBirthday(new Date());
//头像
easyEmployee2.setHeadImage("2.gif");
list.add(easyEmployee);
list.add(easyEmployee2);
//导出
Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams("新东方","学生"),
EasyEmployee.class, list);
//输出效果
FileOutputStream outputStream = new FileOutputStream(new File("employee导出.xlsx"));
workbook.write(outputStream);
outputStream.close();
}
//导出关联对象
@Test
public void testEasyuiPoi1() throws Exception {
List<EasyEmployee> list = new ArrayList<>();
EasyEmployee easyEmployee = new EasyEmployee();
easyEmployee.setName("黑泽志玲");
easyEmployee.setAge(20);
//性别
easyEmployee.setSex(false);
easyEmployee.setBirthday(new Date());
//头像
easyEmployee.setHeadImage("1.jpg");
EasyDept easyDept = new EasyDept();
//设置部门名称
easyDept.setName("慰问部");
easyEmployee.setEasyDept(easyDept);
EasyEmployee easyEmployee2 = new EasyEmployee();
easyEmployee2.setName("黑泽志玲");
easyEmployee2.setAge(20);
//性别
easyEmployee2.setSex(false);
easyEmployee2.setBirthday(new Date());
//头像
easyEmployee2.setHeadImage("2.gif");
EasyDept easyDept2 = new EasyDept();
//设置部门名称
easyDept2.setName("口交部");
easyEmployee.setEasyDept(easyDept2);
//导出代码
//ExportParams 设置标题 设置表名
Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams("新东方","学生"),
EasyEmployee.class, list);
//输出效果
FileOutputStream outputStream = new FileOutputStream(new File("employee2导出.xlsx"));
workbook.write(outputStream);
outputStream.close();
}
@Test
public void testEasyuiPoi2() throws Exception{
List<EasyDept> list = new ArrayList<>();
EasyDept easyDept1 = new EasyDept();
easyDept1.setName("公关部");
EasyDept easyDept2 = new EasyDept();
easyDept2.setName("东厂部");
list.add(easyDept1);
list.add(easyDept2);
//导出代码
//ExportParams 设置标题 设置表名
Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams("部门信息1111","部门111"),EasyDept.class, list);
//输出效果
FileOutputStream outputStream = new FileOutputStream(new File("employee导出1.xlsx"));
workbook.write(outputStream);
outputStream.close();
}
更简洁
@Test
//方法1
public void testEasyuiPoi3() throws Exception{
List<EasyDept> list = new ArrayList<>();
EasyDept easyDept = new EasyDept();
easyDept.setName("乔碧萝");
easyDept.setAddress("斗鱼");
list.add(easyDept);
//导出u
Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams("czxz","dddd"),EasyDept.class, list);
//输出效果
FileOutputStream outputStream = new FileOutputStream("sssss.xlsx");
workbook.write(outputStream);
outputStream.close();
}
//方法2
@Test
public void test02()throws Exception{
List<EasyDept1> list = new ArrayList<>();
EasyDept1 d1 = new EasyDept1();
d1.setName("洗剪吹");
list.add(d1);
Workbook wb = ExcelExportUtil.exportExcel(new ExportParams(),
EasyDept1.class, list);
//将文件创建出来
FileOutputStream out = new FileOutputStream("ddddd.xlsx");
wb.write(out);
out.close();
}