问题表现
在使用Easyexcel进行excel文件导出时,遇到了一个问题:程序启动后,第一次执行导出时耗时非常久,哪怕只有个位数的记录。
原因挖掘
通过追踪代码执行耗时情况,定位到是EasyExcel引用的poi SheetUtil.getDefaultCharWidth耗时长。如下图所示:

继续深入debug poi 代码后发现原因为:
容器启动后第一次执行导出excel文件时,会触发程序装载字体,系统中的字体越多,这个装载的过程就越耗时,装载完成后才会继续执行导出的代码。
环境
poi-5.2.2.jar
jdk 1.8.0_202








解决办法
为了解决第一次导出时加载字体较为耗时的问题,比较直接的想法是可以在容器启动后,主动调用一次创建字体的过程,将触发字体装载的过程前置。

最后
以上就是怕孤独音响最近收集整理的关于EasyExcel第一次导出文件耗时长的问题问题表现原因挖掘解决办法的全部内容,更多相关EasyExcel第一次导出文件耗时长内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复