jxls是在国外比较受欢迎导出工具,就和国内的easypoi类似,这两者并不冲突,就看个人喜好。我在导出Excel文档时,个人比较喜欢使用jxls,废话不多说,那就直接开干吧
第一步:导入maven坐标第二步:编写后台代码org.jxls jxls 2.10.0 org.jxls jxls-poi 2.10.0
注意:我目前使用的jxls是2.x版本,因此它简化了很多步骤。1.x版本需要多几个步骤,多一些代码,并且它们的模板使用方式也不同。详情请参阅官网文档
@GetMapping("/exportByJxls")
public void exportByJxls() throws Exception {
ArrayList users = new ArrayList();
User user = new User();
user.setId("1");
user.setName("小张");
user.setAge("18");
user.setTel("138383838383");
users.add(user);
users.add(new User("2","小王","22","384324324"));
users.add(new User("3","小3","23","3843243224"));
users.add(new User("4","小4","24","11122224"));
users.add(new User("5","小5","25","14654324324"));
File fileIn = new File("C:\Users\Administrator\Desktop\test\templateExcel.xlsx");
File fileOut = new File("C:\Users\Administrator\Desktop\test\targetExcel.xlsx");
OutputStream outputStream = new FileOutputStream(fileOut);
InputStream inputStream = new FileInputStream(fileIn);
Context context = new Context();
context.putVar("data",users);
JxlsHelper.getInstance().processTemplate(inputStream,outputStream,context);
outputStream.close();
}
第三步:制作模板
第一个批注是标识文档扫描的边界,如果你的${}在所写的边界以外,它就不会解析为变量,而是给你当做文本原格式显示第二个批注是循环,items为传入的数组的key,var是我们自定义的对象名称,用于下面的对象引用
第四步:运行访问


