java——POI導入Excel文件

2020-12-07 Java程序猿dulucy

最近手頭上項目的涉及到關於目標值錄入的問題,甲方爸爸要求提供excel導入的方式錄入目標值,之前項目裡也用到excel導入的方式錄入數據,不過當時是自己研究了導出PPT的時候,順手給同事寫了一個簡單的excel導入的工具類,這次的需求稍微複雜一些,涉及到合併單元格的excel讀取,因此在網上找了很多的博客結合博主的示例代碼完成了這次的需求。

需求分析

1、excel錄入模板設計

需要錄入的數據分為兩種類型,一種是簡單的一個類別+數據,一種是多給類別,類別之間有從屬關係,excel模板設計需要合併單元格。如下圖:

類別+數據
涉及合併單元格

2、資料庫表設計

3、poi版本

代碼

1、前臺代碼

使用插件bootstrap的fileinput插件,具體的使用可以自行去查看官網。

html代碼
js代碼

2、controller層

需要注意紅色框的代碼

3、service層

不涉及合併單元格的讀取方式4、dao層
涉及合併單元格讀數據
獲取合併單元格值代碼-1
獲取合併單元格值代碼-2
獲取合併單元格值代碼-3

4、dao層

使用動態註解sql,foreach遍歷map的key作為欄位名,value作為值。

相關焦點

  • 程式設計師:Java操作導出excel的三種方法,POI、easyExcel、Hutool
    前言最近在開發一個管理後臺,有一些excel的導出和導入操作,以前都是使用POI操作excel,這一次嘗試了別的人組件:easyExcel和Hutool,今天就來分享一下,這三種方式中POI操作導出excel。POI導出excel文件。
  • 如何使用JavaScript實現前端導入和導出excel文件
    使用JavaScript實現前端導入excel文件並自動生成可編輯的Table組件在開始實現之前, 我們先來看看實現效果.1.1 實現效果導入excel文件並通過antd的table組件渲染table: 編輯table組件: 保存table數據後實時渲染可視化圖表: 以上就是我們實現導入excel文件後, 編輯table,
  • Hutool excel導出並合併單元格
    今天要講的是excel的導出並合併單元格,其他工具類,可查看參考文檔,之後也會陸續的更新一些常用工具類的用法。二、背景之前常用的是Apache的POI庫,代碼複雜、非常耗內存,嚴重時會導致內存溢出,並發上來,一定會OOM或頻繁full gc,後來發現平時使用的Hutool工具類,也有excel的導入導出API,使用起來簡單方便。
  • 我去,還在這樣讀寫 excel 這也太低效了吧!
    想跟你請教下有沒有更加高效一點讀寫 excel 方法?使用過 poi 的開發同學可能都有此體會,每次都要寫一坨代碼,最後的代碼如下面一樣:這樣的代碼是不是又臭又長?當欄位數量多的時候,一不小心還容易寫錯。
  • java是什麼文件格式?.java文件怎麼打開?
    java是什麼文件?  Java文件是由Sun Microsystems公司於1995年5月推出的Java程序設計語言和Java平臺的總稱。用Java實現的HotJava瀏覽器(支持Java applet)顯示了Java的魅力:跨平臺、動態的Web、Internet計算。從此,Java被廣泛接受並推動了Web的迅速發展,常用的瀏覽器現在均支持Java applet。
  • 通訊錄導入助手
    產品簡介: 本產品是一款通訊錄同步助手,可以快速的將excel聯繫人導入到手機通訊錄中.也可將手機聯繫人導出到excel通訊錄,還可將excel聯繫人發送到qq或微信進行導入,真正的做到通訊錄資源共享
  • 當poi遇上embedding
    最近看到一篇關於poi的論文,把poi各個類別通過鄰接關係利用Word-embedding訓練成了詞向量,這樣原本屬於不同大類下的子類但是功能很相近的類別就在詞向量空間裡顯得比較近,更符合實際情況。相比於之前的分開看各種poi類別比例,這樣可以更好地表達出城市內的poi配置情況。
  • 如何在Visual Studio中創建excel並讀取數據
    在Visual Studio開發工具中,創建python項目,然後安裝xlwt和xlrd第三方庫,使用xlwt創建excel文件並寫入數據,使用xlrd讀取excel文件中的數據。創建python的django框架項目2、接著,新建python文件,導入xlrd和xlwt,配置文件編碼格式
  • 詳解Java中包(package)的概念,新手也能看懂,內含實例
    只不過java中類的文件夾不叫文件夾,叫「包名」英文單詞:package,那package還有個意思就是打包的意思,所以你可以理解為這個文件夾,就是打了一個包裹,就跟快遞包裹似的,你買了好多東西,不同商家是不同的包裹,每個包裹放的東西是不同類別的。java中也是這個意思,包中放的基本上都是同一類的東西。
  • Excel如何快速導入手機聯繫人? 手把手教你在Excel中導入手機聯繫人
    Excel如何快速導入手機聯繫人? 手把手教你在Excel中導入手機聯繫人時間:2017-08-15 13:23   來源:三聯   責任編輯:沫朵 川北在線核心提示:原標題:Excel如何快速導入手機聯繫人?
  • 《桌面萌娘MMD》怎麼導入VMD動作文件 導入VMD動作文件方法說明
    桌面萌娘MMD怎麼導入VMD動作文件?想來很多朋友都還不是很清楚吧,所以呢小編今天給大家帶來的就是桌面萌娘MMD導入VMD動作文件方法說明,需要的朋友不妨進來看看。 桌面萌娘MMD導入VMD動作文件方法說明 MMD的動作數據文件.VMD文件導入到DesktopMMD很簡單,只需要下載安裝Unity後,
  • 文件太多找不到咋整?用excel製作文件管理器,所有版本皆可使用
    Hello,大家好,之前跟大家分享了使用excel中的power query功能製作一個文件管理器,但是很多分析反應自己的excel版本不夠高,無法使用,今天就跟大家分享如何使用宏表函數製作文件管理器,他也是可以實現文件刷新的,這個的操作也不難,下面就讓我們來看下他是如何設置的一、什麼是宏表函數以及FILES函數
  • 怎麼才能把pdf文件轉換成可修改、編輯的excel表格?
    雖然pdf格式的文件難以編輯,但因為它的發送、打開速度快,所以辦公室同事還是少不了使用它。有時候,一些pdf文件裡面的表格內容出錯時,直接編輯它可能有點難度,把它轉為可修改、編輯的excel表格後,操作起來還簡單一些。
  • 有效提高excel表格操作技能,快速製作文件目錄
    我們在實際工作中,我們經常使用excel表格處理數據,我們平時需要不斷積累excel使用小技巧,這次我們分享一個在我們日常工作中算是比較實用的小技巧,這個小技巧是如何使用excel表格快速製作文件目錄,下面我們就一起跟隨著視頻學習一下該項技能。
  • 批量導入工作表到同一個文件
    今日的內容是「VBA之EXCEL應用」的第三章「工作簿(Workbook)和工作表(Worksheet)對象(Object)」中第六節「批量導入工作表到同一個文件」。「VBA之EXCEL應用」這套教程從簡單的錄製宏的講解,一直到窗體的搭建,內容豐富,案例眾多。
  • Python操作Excel文檔
    1. xlrd用於讀取excel文件> import xlrd # 導入模塊 book = xlrd.open_workbook('template.xlsx') # 打開文件 sheet = book.sheet_by_index(index)# index表示獲取第index個sheet頁面數據
  • Java資料庫連接性簡介
    SQLite使用文件作為其功能資料庫,而無需安裝任何服務或守護程序。要開始進行此演示,請繼續下載SQLite示例資料庫。解壓縮.db文件並將其保存在您不會忘記的地方。該文件包含一個基於功能文件的資料庫以及我們可以使用的示例架構和數據。
  • QT環境開發下根據excel表格導入數據源碼
    將excel表格中的內容進行讀取---qt下excel表格相關的開發//插入新數據for (int i = nStartRow + 1, r = 0; i < rowcnt; i++, r++ )
  • Java面向對象之final、abstract抽象、和變量生命周期
    package 關鍵字在開發中,一個項目會有成百上千個Java文件,如果所有的Java文件都在一個目錄中,那麼管理起來就會很痛苦,很難想像這樣的項目會是什麼樣子。在Java中,引入了稱之為包(package)的概念。即:關鍵字:package ,專門用來給當前Java文件設置包名(也就是命名空間)。