栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Springboot整合EasyPOI实现多表导出

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Springboot整合EasyPOI实现多表导出

一、导入SprootBoot依赖

     cn.afterturn
      easypoi-base
      4.0.0
   
    
        cn.afterturn
        easypoi-web
        4.0.0
    
    
        cn.afterturn
        easypoi-annotation
        4.0.0
    
或者

   cn.afterturn
   easypoi-spring-boot-starter
   4.0.0

二、业务代码
public void exportSheets() {
        //用于存放sheet
        List> sheetsList = new ArrayList>();
        //用于存放表头
        List entityList = new ArrayList();
        //用于存放每sheet中的数据
        List> sheet1DataList = new ArrayList>();
        List> sheet2DataList = new ArrayList>();
        List> sheet3DataList = new ArrayList>();
        //sheet数据
        Map sheet1Map = new HashMap();
        Map sheet2Map = new HashMap();
        Map sheet3Map = new HashMap();
        //一共有10列数据
        for (int i=0;i<10;i++){
            entityList.add(new ExcelExportEntity(i+"点",i));
            sheet1Map.put(i+"点",i);
            sheet2Map.put(i+"点",i);
            sheet3Map.put(i+"点",i);
        }
        sheet1DataList.add(sheet1Map);
        sheet2DataList.add(sheet2Map);
        sheet3DataList.add(sheet3Map);
        Map titleMap = new HashMap();
        //就创建3个sheet吧:分别设置表名、表标题、并向表中塞数据
        for (int i = 0; i < 3; i++) {
            Map sheetExportMap = new HashMap();
            String sheetName;
            if (i==0){
                sheetName = "1号表";
                sheetExportMap.put("data",sheet1DataList);
                titleMap.put(i, "1号表标题");
            }else if (i==1){
                sheetName = "二号表";
                sheetExportMap.put("data",sheet2DataList);
                titleMap.put(i, "2号表标题");
            }else {
                sheetName = "三号表";
                sheetExportMap.put("data", sheet3DataList);
                titleMap.put(i, "3号表标题");
            }
            ExportParams sheetExportParam = new ExportParams(titleMap.get(i),sheetName, ExcelType.XSSF);
            sheetExportMap.put("title", sheetExportParam);
            sheetExportMap.put("entityList", entityList);
            sheetsList.add(sheetExportMap);
        }
        XSSFWorkbook workbook = new XSSFWorkbook();
        for (Map map:sheetsList){
            ExcelExportService service = new ExcelExportService();
            service.createSheet(workbook, (ExportParams)map.get("title"),
                    (Class) map.get("entity"),(Collection) map.get("data"));
        }
        //导出文件
        FileOutputStream fos=null;
        try {
            fos = new FileOutputStream("d://多表导出案例.xlsx");
            workbook.write(fos);
        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            if (fos!=null){
                try {
                    fos.close();
                    workbook.close();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }
    }
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/711417.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号