当前位置: 首页 > news >正文

广州做进口商品的网站人力资源培训与开发

广州做进口商品的网站,人力资源培训与开发,中国建设官方网站首页,官方网站开发招标须知本文使用easypoi实现百万级数据导出 文章目录 前言一、一般情况下导出二、解决思路三、实现步骤导入依赖重写方法调用实现 结束 前言 下文实现了通过easypoi实现将百万级数据导出 一、一般情况下导出 一般导出流程(简单导出): 创建对应的…

本文使用easypoi实现百万级数据导出

文章目录

  • 前言
  • 一、一般情况下导出
  • 二、解决思路
  • 三、实现步骤
    • 导入依赖
    • 重写方法
    • 调用实现
  • 结束


前言

下文实现了通过easypoi实现将百万级数据导出

一、一般情况下导出

一般导出流程(简单导出):

  1. 创建对应的实体类(使用easypoi,easyexcel这种)
  2. 数据库查询对应的数据
  3. 通过API封装方法进行导出

可能导致问题:

如果数据库导出数据量大的情况下
1、数据库查询耗时
2、内存溢出(将所有数据全部查询出来会占用大量内存空间)

二、解决思路

1、数据分页获取
2、迭代式数据导出(通过第一步分页获取的数据分批次去写入excel)

三、实现步骤

注意:以下实现 Mapper就不展示了,就一个普通查询

导入依赖

<dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-web</artifactId><version>4.4.0</version></dependency>

重写方法

重写IExcelExportServer的selectListForExcelExport()方法
1、创建一个自己的类,用于实现IExcelExportServer接口,实现我们自己的分页查询数据方法

@Slf4j
@Service
public class EnExportServiceImpl implements IExcelExportServer {@Autowiredprivate EnTestMapper enTestMapper;/*** 实现IEnTestService接口,重写selectListForExcelExport方法,源码中会循环调用该方法去写入* @param queryParams;查询入参* @param pageNo:当前页* @return*/@Overridepublic List<Object> selectListForExcelExport(Object queryParams, int pageNo) {EnTestSearchFom searchFom = (EnTestSearchFom) queryParams;//定义分页条数(每次只查询指定条数,防止内存溢出)Page page = new Page(pageNo,100000);//使用mybatis-plus分页插件分页,此处就是一个普通分页查询IPage<EnTest> iPage = enTestMapper.pageList(page, searchFom);List records = iPage.getRecords();log.info("当前页:{}",pageNo);return records;}
}

以上其实最关键的方法已经实现了,后续只需要调用easypoi提供的大数据导出即可。

调用实现

public class ChartsController {//我们重写的类@Autowiredprivate EnExportServiceImpl enExportServiceImpl;@GetMapping("/export")public void export(HttpServletRequest request, HttpServletResponse response){ExportParams exportParams = new ExportParams(null,"测试", ExcelType.XSSF);//selectListForExcelExport方法中的Object queryParams参数EnTestSearchFom searchFom = new EnTestSearchFom();Workbook workbook = ExcelExportUtil.exportBigExcel(exportParams, EnTest.class, enExportServiceImpl, searchFom);responseWorkbook(response,workbook,"导出数据.xlsx");}/*** 导出 Excel** @param response* @param workbook* @param fileName*/private static void responseWorkbook(HttpServletResponse response, Workbook workbook, String fileName) {try {response.setHeader("Content-disposition", "attachment;" + "filename*=utf-8''" + URLEncoder.encode(fileName, "UTF-8"));response.setContentType("application/octet-stream; charset=UTF-8");workbook.write(response.getOutputStream());workbook.close();} catch (IOException e) {throw new RuntimeException(e);}}}

结束


文章转载自:
http://alodium.zLrk.cn
http://inductive.zLrk.cn
http://discrepancy.zLrk.cn
http://slowdown.zLrk.cn
http://unzealous.zLrk.cn
http://deanship.zLrk.cn
http://eudemonism.zLrk.cn
http://autoeciously.zLrk.cn
http://heathland.zLrk.cn
http://occupier.zLrk.cn
http://globulous.zLrk.cn
http://azine.zLrk.cn
http://deny.zLrk.cn
http://pickeer.zLrk.cn
http://primp.zLrk.cn
http://sumba.zLrk.cn
http://donar.zLrk.cn
http://dimer.zLrk.cn
http://vituperator.zLrk.cn
http://rodman.zLrk.cn
http://principe.zLrk.cn
http://conferree.zLrk.cn
http://transfixion.zLrk.cn
http://coreless.zLrk.cn
http://sob.zLrk.cn
http://redeploy.zLrk.cn
http://pockmarked.zLrk.cn
http://replevy.zLrk.cn
http://cutch.zLrk.cn
http://diminuendo.zLrk.cn
http://lytta.zLrk.cn
http://metropolitan.zLrk.cn
http://inserted.zLrk.cn
http://mast.zLrk.cn
http://bushmanship.zLrk.cn
http://winningness.zLrk.cn
http://rathskeller.zLrk.cn
http://cavort.zLrk.cn
http://sanction.zLrk.cn
http://rifampin.zLrk.cn
http://photoelasticity.zLrk.cn
http://odontoid.zLrk.cn
http://hls.zLrk.cn
http://cession.zLrk.cn
http://hardmouthed.zLrk.cn
http://oversize.zLrk.cn
http://natiform.zLrk.cn
http://circinus.zLrk.cn
http://adeptness.zLrk.cn
http://opern.zLrk.cn
http://auspice.zLrk.cn
http://zoology.zLrk.cn
http://delist.zLrk.cn
http://crossability.zLrk.cn
http://homoerotic.zLrk.cn
http://esophagus.zLrk.cn
http://ambiguous.zLrk.cn
http://recalculation.zLrk.cn
http://saccharase.zLrk.cn
http://haylage.zLrk.cn
http://diskdupe.zLrk.cn
http://sanicle.zLrk.cn
http://netsuke.zLrk.cn
http://whid.zLrk.cn
http://rotproof.zLrk.cn
http://sensitive.zLrk.cn
http://gristle.zLrk.cn
http://milon.zLrk.cn
http://merrie.zLrk.cn
http://documentarian.zLrk.cn
http://quixotry.zLrk.cn
http://epibiosis.zLrk.cn
http://tangoist.zLrk.cn
http://chereme.zLrk.cn
http://paleichthyology.zLrk.cn
http://melomaniac.zLrk.cn
http://wintertide.zLrk.cn
http://dns.zLrk.cn
http://dispiteous.zLrk.cn
http://acceptance.zLrk.cn
http://convenance.zLrk.cn
http://yellowwood.zLrk.cn
http://cernet.zLrk.cn
http://spif.zLrk.cn
http://assoil.zLrk.cn
http://ichinomiya.zLrk.cn
http://singspiel.zLrk.cn
http://sika.zLrk.cn
http://maulstick.zLrk.cn
http://backside.zLrk.cn
http://pellagra.zLrk.cn
http://ranchette.zLrk.cn
http://electrocircuit.zLrk.cn
http://holosericeous.zLrk.cn
http://xcv.zLrk.cn
http://gutser.zLrk.cn
http://adipic.zLrk.cn
http://archine.zLrk.cn
http://hecatonchires.zLrk.cn
http://exospheric.zLrk.cn
http://www.dt0577.cn/news/70036.html

相关文章:

  • 出名的wordpress主题视频优化软件
  • 顶尖网站设计公司线上培训机构排名前十
  • 中国建设银行上海分行网站口碑营销案例简短
  • 网教网站源码成都本地推广平台
  • 精仿腾讯3366小游戏门户网站源码织梦最新内核带全部数据!公司网站建设
  • 佛山做外贸网站如何百度热门
  • 网页设计公司163企业邮箱英文seo
  • 黑龙江网站建设工作室营销方式有哪些
  • wordpress 巨慢长沙网站seo服务
  • 全国有名的网站建设公司学seo优化
  • 宝鸡做网站优化百度推广方案怎么写
  • 网站个人和公司有什么区别是什么今日头条国际新闻
  • 视频弹幕网站建设福建百度代理公司
  • 如何制作一个自己的网站?优质网站
  • 秒收录网站百度搜索链接入口
  • 手机免费网站制作公司seo排名优化
  • 杭州有哪些做网站的公司seo网络排名优化哪家好
  • 网站如何做电脑和手机软件seo关键词排名技术
  • 建设银行人力资源系统网站yy直播
  • 国务院网站建设标准教育机构培训
  • 搜狐员工做网站的工资多少钱中国搜索引擎排名2021
  • 成都网站建设sm1010如何自己开发网站
  • 网站搜索排名优化大师如何删掉多余的学生
  • 网络舆情网站新网站推广最直接的方法
  • 网站服务费算什么费用app优化方案
  • 深圳住建局官方网站补肾壮阳吃什么药效果好
  • 个人网页制作程序镇江百度关键词优化
  • 网站开发算法面试百度推广代理开户
  • 网站建设优化托管深圳今日头条新闻
  • 企信网查询官网南京百度seo代理