温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么用springboot+easypoi大数据量excel导出

发布时间:2021-07-16 10:43:06 来源:亿速云 阅读:552 作者:chen 栏目:大数据

本篇内容主要讲解“怎么用springboot+easypoi大数据量excel导出”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用springboot+easypoi大数据量excel导出”吧!

01

上次写了一行代码解决导出导入,没看的小伙伴建议先看下《一行代码做Excel导入导出》,但是实际业务中遇到一个问题,如果数据里比较大的时候,例如10w+数据一次导出,就会出现卡死情况,继续看官方文档,有大数据量导出方法,实现如下

@RequestMapping("export")public void export(HttpServletResponse response) {     Map<String, Object> params = new HashMap<>();     Workbook workbook = bigExcel(1, params, null, new ExportParams("海贼王", "海贼王"),         new Page<>());     ExcelExportUtil.closeExportBigExcel();     downLoadExcel("海贼王.xls", response, workbook);}
private Workbook bigExcel(int pageNum, Map<String, Object> params, Workbook workbook, ExportParams exportParams, Page<SysUser> page) {     page.setCurrent(pageNum);     page.setSize(1000);     page.setCondition(params);     page = this.getData(sysUserService.queryPage(page));     List<SysUser> 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导出”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI