您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“怎么用springboot+easypoi大數(shù)據(jù)量excel導(dǎo)出”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“怎么用springboot+easypoi大數(shù)據(jù)量excel導(dǎo)出”吧!
01
上次寫了一行代碼解決導(dǎo)出導(dǎo)入,沒看的小伙伴建議先看下《一行代碼做Excel導(dǎo)入導(dǎo)出》,但是實際業(yè)務(wù)中遇到一個問題,如果數(shù)據(jù)里比較大的時候,例如10w+數(shù)據(jù)一次導(dǎo)出,就會出現(xiàn)卡死情況,繼續(xù)看官方文檔,有大數(shù)據(jù)量導(dǎo)出方法,實現(xiàn)如下
@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大數(shù)據(jù)量excel導(dǎo)出”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。