之前在使用easyExcel的时候发现网上对于easyExcel web下载介绍比较少,所以我想着出个比较简单的文章帮助大家了解 easyExcel的使用。

一、首先我们需要导入pom依赖:

    <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.2.10</version></dependency>

二、创建实体类 DemoData:


@Data
//设置背景色为空白,不使用easyExcel默认灰色背景 (有一说一默认背景是真的丑!)
@HeadStyle(fillPatternType = FillPatternType.NO_FILL, fillForegroundColor = 10)
public class DemoData {@ExcelProperty("字符串标题") //excel表头private String string;@ExcelProperty("日期标题")private Date date;@ExcelProperty("数字标题")private Double doubleData;/*** 忽略这个字段*/@ExcelIgnoreprivate String ignore;
}
注意:我这里是使用了Lombok插件 生成的 set、get 方法,如果没用这个插件,记得要手动写好set、和get、方法哦,因为easyExcel官方文档明确说明 实体类必须要有 get和set方法

三、编写导入工具类

//无填充方式导出并下载xlsxpublic static void downloadUnfilledToXlsx(String excelName, HttpServletResponse response, Class cla, List list) throws IOException {// 这里注意 使用swagger 会导致各种问题,easyexcel官方文档推荐直接用浏览器或者用postman测试response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");response.setCharacterEncoding("utf-8");// 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系String fileName = URLEncoder.encode(excelName, "UTF-8").replaceAll("\\+", "%20");response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");EasyExcel.write(response.getOutputStream(), cla).sheet(excelName).doWrite(list);}

四、为实体类注入数据

这里就简简单单注入些 测试数据

    private List<DemoData> data() {List<DemoData> list = new ArrayList<DemoData>();for (int i = 0; i < 10; i++) {DemoData data = new DemoData();data.setString("字符串" + i);data.setDate(new Date());data.setDoubleData(0.56+i);list.add(data);}return list;}

五、编写Controller接口

   @RequestMapping("/download")public void download(HttpServletResponse response) throws IOException {EasyExcelUtils.downloadUnfilledToXlsx("easyExcel测试",response,DemoData.class,data());}

六、浏览器测试功能


下载后:

打开后:

总结:原创不易,点个赞哈。

使用easyExcel实现浏览器下载Excel。相关推荐

  1. 使用easyexcel从浏览器下载excel

    添加依赖:得多加 两个依赖不然会报错误(亲身经历) 如果只加easyexcel依赖会报错误,解决:解决org.objectweb.asm.Type 如果继续报错class net.sf.cglib.c ...

  2. Springboot apache poi 浏览器下载 excel

    在日常干活中,经常会遇到后端实现下载文件的需求,将自己实现的步骤记录下来,以便以后查看方便或者帮助更多的同学. springboot POST 接口,支持浏览器下载excel文件,具体实现实现: 1. ...

  3. 模拟浏览器下载Excel 到本地

    文章目录 1. 文件导出 1.1 导出实现方式 1.2 导出实现场景 2. 浏览器导出Excel 2.1 废话 2.2 导出Excel 接口 2.2.1 启动类 2.2.2 导出文件Controlle ...

  4. JAVA 浏览器下载excel,自定义样式:合并单元格,设置多种背景填充颜色,冻结窗格

    添加依赖: <!-- POI --><dependency><groupId>org.apache.poi</groupId><artifactI ...

  5. 使用 EasyExcel 读取和下载 excel 文件

    前言 EasyExcel是阿里巴巴开源的一个excel处理框架,以使用简单,节省内存著称,EasyExcel能大大减少占用内存的主要原因是在解析Excel时没有将文件数据一次性全部加载到内存中,而是从 ...

  6. 解决浏览器下载excel文件时显示“文件已损坏”

    天天被学校的健康上报三个专业汇总搞得头大,一个班要截一个图,三个专业要十几个截图,一天三次,啊哈哈真是想快点毕业,其实健康系统上面有下载整个excel文件, but,每次点击导出之后,可以下载成功(我 ...

  7. 解决不同浏览器下载excel文件中文名称乱码问题

    楼主多次测试发现,现在的三大主流浏览器(IE,Firefox,Chrome). IE浏览器对文件格式审查最严格,在从网页导出Excel的时候,需要对文件名称指定编码类型(UTF-8) HttpUtil ...

  8. IE浏览器下载excel文件时不弹出下载保存提示框的解决方法

    在IE浏览器中下载文件的时候,下载保存的提示框不弹出了,特意咨询了一下解决的方法,特来和大家分享. 1.打开"我的电脑"后请点击工具列的:"工具 -- 文件夹选项&quo ...

  9. java:浏览器下载excel模板

    1.枚举类 /** * * @return * @author ZHD-xinwei.Fan * @creed: 下载模板枚举类 * @date 2022/10/24 15:07 */public e ...

最新文章

  1. 小技巧:远程连接共享文件密码错误
  2. .net微软消息队列(msmq)简单案例
  3. shiro登录认证过程讲解(转)
  4. windowsDOS命令
  5. MOGRE学习(三) Mogre的SceneNode及Entity
  6. 解压vmlinuz和解压initrd(initramfs)
  7. 嵌入式从硬件到Linux学习经验汇总-----By知乎
  8. stm8s103-PWM输出与输入捕获
  9. 【面试经历】问题总结
  10. PHP裂变红包源码,php版本微信裂变红包api详解
  11. 更改计算机网络,终于理会如何更改计算机网络ip
  12. 太上玄门日诵晚课仙经
  13. 图像加噪与滤波【C#】
  14. NSoup Select 示例
  15. TVS管防护电路的典型应用原理,这些你必须了解
  16. 直播类APP功能及技术难点
  17. java桌面通讯录源码_TONGXUNLU JAVA通讯录源码 JAVA课程设计源码 讯友桌面通讯录 通讯录管理 - 下载 - 搜珍网...
  18. 怎么制作升温曲线图_PCBA制造过程中几种典型的温度曲线
  19. 计算机网络中常用设备处于脱机状态,你的设备处于脱机状态请使用上次的密码登录...
  20. mysql 主键 null_当主键碰到NULL

热门文章

  1. 视频转GIF+GIF录制
  2. 《余光中诗歌精读》放下代码,静下心来,细细品读
  3. 高德地图只显示部分区域
  4. 编译提示“/usr/bin/ld: cannot find -lgflags-shared“错误的解决办法
  5. C#注册和注销全局快捷键
  6. Excel模板导出并插入图片
  7. 裂变是什么?如何让用户自行裂变?流程、细节大曝光
  8. Linux运维之windows2008R2远程连接问题
  9. 算法复杂度 O(1),O(n),O(logn),O(nlogn)的区别
  10. 钢琴 低音到高音 音效_什么是低音扬声器,中音扬声器和高音扬声器?