Spring Boot + Vue Element實現Excel文件上傳、解析、下載(含完整實現過程)

最近用Spring Boot和Vue Element實現了一個微型項目,該項目自構思到第一個版本的實現用了1個月的時間。前端

固然大部分都是下班後,加班到11點作的;可是從功能實現到細節優化用了3個月的時間。sql

「作」是一回事,「作好」是另一回事。固然花了3倍的工做量,也不見得就作的很到位。數據庫

閒話少敘,言歸正傳。本文介紹我用SpringBoot和Vue實現的文件上傳功能。後端

1. 實話說,作一個文件上傳並不難。方法無外乎利用本身之前寫的代碼,或者用搜索引擎參考別人的代碼。優化

本文中寫的方法,參考了網上的例子,參考了幾篇博文(實在很差意思,當時的連接未保存),在此表示感謝,就不一一列舉。搜索引擎

先上效果圖:3d

 

 點擊「導入數據」,會彈出一個對話框,選擇Excel文件:blog

 

點擊「導出數據」,會從後臺查詢數據後生成一個Excel文件。索引

2. 前端Vue Element部分,導入經過el-upload實現,導出經過el-button實現。其中beforUpload和exportData代碼以下:文件上傳

 

 

 

 3. 後端Spring boot部分,上傳普通txt等文件的Controller中的方法

 

 上傳Excel文件的Controller中的方法:

 

 業務邏輯部分對應的代碼:

導出Excel對應Controller中的方法:

 

其中POIUtils是用來從Mysql數據庫中查詢數據,而後生成一個Excel文件並寫到輸出流中。

 生成Excel用的是Apache的POI,而後參考網上實現的代碼本身封裝了一個Util類,其核心代碼以下:

相關文章
相關標籤/搜索