正常导出excel表格使用的poi,但是导出复杂的excel有点困难,但是可以使用freemaker模板来导出复杂的excel。
都是先生成一个Excel表格的模板,最好是增加一行数据。具体看图里面的步骤。
项目整体结构
下面就直接看代码
public class Data {
//代码复制之后直接就可以运行了
public static void main(String[] args) {
demo();
}
public static void demo() {
// 项目下的template路径
String path = new File("").getAbsolutePath() + "\\template";
Map map = new HashMap();
// 模板所在的路径
map.put("tempFoldPath", path);
// 生成的路径
map.put("file", path + "/采购订单.xls");
// 模板名称
map.put("tampPath", "采购订单.ftl");
// 最后生成的表格的名称
map.put("excelName", "采购订单-" + "Demo" + ".xls");
// 封装数据
Map exlParam = new HashMap<>();
exlParam.put("findList", new Data().list());
// 调用方法,返回浏览器访问的地址
String downloadUrl = ExportExcelUtil.exportExcel(map, exlParam);
}
// 自己造假数据,正常来说都是从数据库查询出来拼装数据的
public List list() {
List purbillList = new ArrayList<>();
purbillList.add(new Purbill("1", "2", "名称", "采购名称", "规格参数", "参数指标", "场地", "10吨", 10, 20.2, 220.2, "品牌"));
return purbillList;
}
}
class Purbill {
private String bidId;
private String billno;
private String categoryName;
private String purname;
private