

easyExcel导出图片
基于SpringBoot,使用EasyExcel导出图片功能1、前言项目中有导出excel文件需要包含图片的需求,使用EasyExcel注解方式支持导出,但是不够灵活,而且当导出的图片过多,过大会导致导出时间过长,excel文件过大。这个时候可以考虑先压缩图片,然后再导出,如果必须要导出原图那就没办法了,只能异步导出了。下面介绍一下导出的方案。 2、导出方案2.1 使用easyExcel注解,配合自定义handler,实现一个单元格,导出多张图片。导出实体VO: import com.alibaba.excel.annotation.ExcelProperty; import lombok.Data; import java.util.List; @Data public class ExportVo ..
Read more

大文件分片上传
基于SpringBoot实现大文件分片上传1、前言在项目开发遇到大文件,比如视频之类的文件,直接上传速度很慢,而且受限于服务器带宽,用户体验很不好,所以需要优化,常见的解决方案就是分片上传。 2、环境SpringBoot 3.3.5 +JDK 17 +MinIO 3、实现3.1 后端分片开始做分片时,首先考虑在服务端做分片看看能否提升整体文件上传速度。首先说结论,不能,甚至可能比直接上传大文件还慢。所以大文件分片上传必须要前端配合,只在后端实现不行,但是还是说一下思路:首先通过接口拿到文件,然后对文件进行分片,然后上传,最后再合并,即使借助线程池,实现同时上传多个分片,效率还是不行,主要原因是,分片还有合并IO耗时太长。 3.2 前端分片,后端合并主要流程:前端拿到文件,然后分片,并行调用上传接口(这个是重..
Read more