Excel导入导出(ant design+spring boot)

1、运用ant design的upload组件,将Excel中的数据批量导入到数据库
upload组件的 action 往后台传递的是 multipartfile 类型,而使用jxl/poi方式读取文件要求文件类型为 file ,因此存在 multipartfile 转换 file 的过程。
转换方法为:将multipartfile转换为输入流( 调用getInputStream() ),然后直接读取;

2、在spring boot后台程序中通知浏览器下载文件
A. 下载spring boot的静态资源:静态资源在程序启动时被加载进去,如果中途资源被修改,就不能及时获取到最新的修改资源;唯一的解决方式是重新启动程序!
spring boot默认的静态资源映射:
/** 映射到 /static (或/public、/resources、/META-INF/resources)文件下;
优先级:META-INF/resources > resources > static > public 
访问方式 :http://url:端口号/完整的文件名称(包括后缀)

举个例子:
项目目录结构如下图:

在浏览器地址栏中输入 localhost:8080/10.xls 来实现下载文件
B.将excel文件以流的方式输出到浏览器中

reponse请求头:
response.setContentType("application/x-download;charset=UTF-8");
response.setHeader("Content-Disposition",
"attachment;filename=" +URLEncoder.encode(file.getName(), "UTF-8"));
在浏览器中输入 调用该方法的url 可完成下载
3、导入导出需要的依赖
excel解析有两种方式:jxl和poi;它们的区别:jxl只能解析03版excel(后缀为.xls),而poi能解析03版excel和07版excel(后缀为.xlsx)
因为导入的excel版本未知,因此采用poi解析方式比较合适;
在这里引入与poi有关的依赖:
-----------------------------------------------------------
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
-----------------------------------------------------------
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
-----------------------------------------------------------
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
-----------------------------------------------------------
<groupId>org.apache.xmlbeans</groupId>
<artifactId>xmlbeans</artifactId>
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值