十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
本篇内容主要讲解“怎么用springboot+easypoi大数据量excel导出”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用springboot+easypoi大数据量excel导出”吧!
创新互联公司专注于岳塘企业网站建设,响应式网站设计,电子商务商城网站建设。岳塘网站建设公司,为岳塘等地区提供建站服务。全流程按需开发网站,专业设计,全程项目跟踪,创新互联公司专业和态度为您提供的服务
01
上次写了一行代码解决导出导入,没看的小伙伴建议先看下《一行代码做Excel导入导出》,但是实际业务中遇到一个问题,如果数据里比较大的时候,例如10w+数据一次导出,就会出现卡死情况,继续看官方文档,有大数据量导出方法,实现如下
@RequestMapping("export")public void export(HttpServletResponse response) { Mapparams = new HashMap<>(); Workbook workbook = bigExcel(1, params, null, new ExportParams("海贼王", "海贼王"), new Page<>()); ExcelExportUtil.closeExportBigExcel(); downLoadExcel("海贼王.xls", response, workbook);} private Workbook bigExcel(int pageNum, Map params, Workbook workbook, ExportParams exportParams, Page page) { page.setCurrent(pageNum); page.setSize(1000); page.setCondition(params); page = this.getData(sysUserService.queryPage(page)); List users = FastJsonUtils.toList(FastJsonUtils.toJSONString(page.getRecords()), SysUser.class); workbook = ExcelExportUtil.exportBigExcel(exportParams, SysUser.class, users); if (page.getPages() > pageNum) { bigExcel(pageNum + 1, params, workbook, exportParams, page); } return workbook;}private void downLoadExcel(String fileName, HttpServletResponse response, Workbook workbook) { try { response.setCharacterEncoding("UTF-8"); response.setHeader("Content-Disposition", "attachment;filename="> response.setHeader("content-Type", "application/vnd.ms-excel"); workbook.write(response.getOutputStream()); } catch (IOException e) { throw new NormalException(e.getMessage()); }}
到此,相信大家对“怎么用springboot+easypoi大数据量excel导出”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!