三行程式碼嵌入 java 實現複雜 Excel 資料入庫
一般常規辦法:先使用POI或者HSSFWorkbook等第三方類庫對其表格資料結構化,再用SQL語句寫入資料庫。由於Java並沒有表格物件,總要利用集合加實體類去實現(硬編碼),如果碰到格式複雜的表格,解析難度大,工作量會成倍增加,程式碼不僅冗長、且很難通用。
比如要處理這麼個場景:資料庫表Logistics有3個欄位:Shippers、Region、Quantity。解析如下Excel表格,併入庫:
入庫後的效果:
Java程式碼大概要寫成這樣子:
... File target = new File(filepath, filename); FileInputStream fi = new FileInputStream(target); HSSFWorkbook wb = new HSSFWorkbook(fi); HSSFSheet sheet = wb.getSheetAt(sheetnum); int rowNum = sheet.getLastRowNum() + 1; for (int i = startrow; i < rowNum; i++) { PageData varpd = new PageData(); HSSFRow row = sheet.getRow(i); int cellNum = row.getLastCellNum(); ... } ... List<PageData> listPd = (List)ObjectExcelRead.readExcel(filePath, fileName, 3, 0, 0); for(int i=0;i<listPd.size();i++){ pd.put("ET_ID", this.get32UUID()); ... } /*The operation to import the database*/ mv.addObject("msg","success"); ... |
如果有了集算器,這樣的問題則會簡單很多,它是專業處理結構化資料的語言,能夠輕鬆讀取Excel資料,結構化成“序表”後匯入資料庫。以往需要編寫數千行程式碼才能完成的Excel資料結構化入庫工作,現在只需簡單的幾行就搞定了。比如上面的問題,集算器SPL僅3行:
|
A |
1 |
=file("/workspace/crosstab.xls").xlsimport@t(;1,2).rename(#1:Shippers) |
2 |
=A1.pivot@r(Shippers;Region,Quantity) |
3 |
=Mysql.update(A2,Logistics) |
其實還有很多類似的結構化問題不太方便,但有集算器SPL的輔助卻很簡單,感興趣可以參考: 、
集算器還很容易嵌入到Java應用程式中, 有使用和獲得它的方法。
關於集算器安裝使用、獲得免費授權和相關技術資料,可以參見 。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69900830/viewspace-2699812/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- java程式碼實現excel檔案資料匯入JavaExcel
- java 實現excel中的資料匯入到資料庫的功能JavaExcel資料庫
- TP5.1excel匯入資料庫的程式碼?php excel如何匯入資料庫?Excel資料庫PHP
- java 從EXCEL匯入到資料庫JavaExcel資料庫
- 如何用Java將excel資料匯入資料庫JavaExcel資料庫
- 雜湊表的程式碼實現(Java)Java
- Excel匯入Sqlserver資料庫指令碼ExcelSQLServer資料庫指令碼
- 填報指令碼之輕鬆搞定複雜表的資料入庫指令碼
- 三行CSS程式碼實現水平垂直居中CSS
- java怎麼將excel表格資料匯入資料庫JavaExcel資料庫
- Oracle EBS 資料庫密碼複雜度設定Oracle資料庫密碼複雜度
- JS之實現Excel資料匯入JSExcel
- java實現將資料庫資料轉化成excel表格顯示出來Java資料庫Excel
- 三行程式碼實現 JS 柯里化行程JS
- 有什麼工具可以上載複雜的 excel 資料填報到資料庫中Excel資料庫
- 分散式資料庫下子查詢和 Join 等複雜 SQL 如何實現?分散式資料庫SQL
- Excel資料庫轉MySQL,實現查詢Excel資料庫MySql
- Java複雜資料型別用法 (轉)Java資料型別
- excel 匯入sqlyog資料庫ExcelSQL資料庫
- 資料結構 - 雜湊表,三探之程式碼實現資料結構
- 如何將 EXCEL 資料寫入資料庫Excel資料庫
- 各種排序演算法思想複雜度及其java程式實現排序演算法複雜度Java
- 複雜「場景」資料匯入匯出
- 降低程式碼的圈複雜度——複雜程式碼的解決之道複雜度
- 匯入excel資源到資料庫Excel資料庫
- mysql資料庫實現主從複製MySql資料庫
- 將excel表格匯入資料庫Excel資料庫
- DataSet多表關聯實現本地資料複雜的查詢
- 物件導向程式設計:Java複雜資料型別用法(轉)物件程式設計Java資料型別
- 將表格資料匯入Excel表程式碼例項Excel
- 嵌入式狗的 JAVA 入門筆記·2 程式碼實踐Java筆記
- Java關於資料結構的實現:雜湊Java資料結構
- 資料重整:用Java實現精準Excel資料排序的實用策略JavaExcel排序
- java實現將excel表格資料解析成JSONArrayJavaExcelJSON
- JAVA 實現《複雜迷宮》遊戲|CSDN創作打卡Java遊戲
- 在Oracle中實現資料庫的複製Oracle資料庫
- 低程式碼開發平臺 讓資料應用不再複雜
- 從Excel到匯入MYSQL資料庫ExcelMySql資料庫