IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> easypoi 实现多sheet导出excel -> 正文阅读

[开发工具]easypoi 实现多sheet导出excel

easypoi官方文档

  • 添加依赖
    //excel
    implementation group: 'cn.afterturn', name: 'easypoi-spring-boot-starter', version: '4.1.0'
  • 实现
    public void download(HttpServletResponse response, String schoolName,
                         String start,
                         String end,
                         Integer subject){

        List<Map<String, Object>> exportParamList = new ArrayList<>();
        //第一个sheet
        List<Object[]> forRanks = woSchoolRepo.getForRankNoPage(schoolName, subject, start, end);
        List<RespRanks> list1 = new ArrayList<>();
        for (Object[] forRank : forRanks) {
            RespRanks build = RespRanks.builder()
                    .gradeName(forRank[0] + "")
                    .className(forRank[1] + "")
                    .excellent(((BigDecimal) forRank[2]).intValue())
                    .good(((BigDecimal) forRank[3]).intValue())
                    .pass(((BigDecimal) forRank[4]).intValue())
                    .fail(((BigDecimal) forRank[5]).intValue()).build();
            list1.add(build);
        }
        log.info("list1: "+list1);
        ExportParams params = new ExportParams("成绩汇总", "班级成绩汇总", ExcelType.XSSF);
        Map<String, Object> valueMap = Maps.newHashMap();
        valueMap.put("title", params);
        valueMap.put("data", list1);
        valueMap.put("entity", RespRanks.class);
        exportParamList.add(valueMap);
        //第二个sheet
        List<WoSchool> all = woSchoolRepo.findAllBySubjectIdAndSchoolNameAndClientTimeIsBetween(subject, schoolName, DateUtil.getDateformString(start), DateUtil.getDateformString(end));
        List<RespStudents> list2 = all.stream().map(RespStudents::convert).collect(Collectors.toList());
        log.info("list2: "+list2);
        ExportParams params2 = new ExportParams("成绩汇总", "个人成绩汇总", ExcelType.XSSF);
        Map<String, Object> valueMap2 = Maps.newHashMap();
        valueMap2.put("title", params2);
        valueMap2.put("data", list2);
        valueMap2.put("entity", RespStudents.class);
        exportParamList.add(valueMap2);
        try {
            Workbook workbook = ExcelExportUtil.exportExcel(exportParamList, ExcelType.XSSF);
            response.setContentType("application/xlsx;charset=utf-8");
            response.setHeader("Content-Disposition", "attachment; filename=" + System.currentTimeMillis()+".xlsx");
            workbook.write(response.getOutputStream());
        }catch (Exception e){
           e.printStackTrace();
        }


    }
  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章           查看所有文章
加:2022-03-06 13:19:41  更:2022-03-06 13:21:50 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 6:53:04-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码