[發(fā)明專利]一種可定制表格式的Excel表解析方法無效
| 申請?zhí)枺?/td> | 201310080372.5 | 申請日: | 2013-03-13 |
| 公開(公告)號: | CN103150380A | 公開(公告)日: | 2013-06-12 |
| 發(fā)明(設(shè)計(jì))人: | 許峰;陳亞明;葉楓;婁淵勝;范珂;王亞普;余霖;周遠(yuǎn)超 | 申請(專利權(quán))人: | 河海大學(xué) |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30;G06F17/24 |
| 代理公司: | 南京蘇高專利商標(biāo)事務(wù)所(普通合伙) 32204 | 代理人: | 柏尚春 |
| 地址: | 210098 *** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 制表 格式 excel 表解 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種通用的、可定制表格式的Excel表解析方法,結(jié)合流域水調(diào)業(yè)務(wù),用于解決形式復(fù)雜,格式不同的水調(diào)業(yè)務(wù)Excel表格的數(shù)據(jù)解析問題,屬于計(jì)算機(jī)報(bào)表處理技術(shù)領(lǐng)域。
背景技術(shù)
隨著信息技術(shù)的迅猛發(fā)展,水利信息化水平也得到了很大的提高。在日常辦公中,流域管理者在水資源決策、水量調(diào)度管理等方面存在數(shù)據(jù)不全面、辦公方式落后、辦公效率低等問題,給水資源決策和水量調(diào)度管理帶來了諸多不便。為了保證不同流域的大量水資源數(shù)據(jù)能夠準(zhǔn)確、高效地錄入數(shù)據(jù)庫并進(jìn)行匯總計(jì)算,需要為負(fù)責(zé)數(shù)據(jù)錄入的水利工作者提供標(biāo)準(zhǔn)化的數(shù)據(jù)表格。以傳統(tǒng)網(wǎng)頁形式呈現(xiàn)的表單影響了用戶體驗(yàn),通過Excel表格進(jìn)行批數(shù)據(jù)錄入的方式在辦公中已得到越來越普遍的采用。然而,由于水利業(yè)務(wù)所需的表格形式復(fù)雜、數(shù)據(jù)量大、專業(yè)性強(qiáng),傳統(tǒng)的Excel上報(bào)解析方式已經(jīng)遠(yuǎn)遠(yuǎn)不能滿足水利業(yè)務(wù)的處理需求。因此,有必要提供一種通用的Excel表格解析方法實(shí)現(xiàn)流域水調(diào)業(yè)務(wù)可定制復(fù)雜表格的高效解析。
發(fā)明內(nèi)容
發(fā)明目的:針對現(xiàn)有技術(shù)中存在的問題,本發(fā)明基于現(xiàn)有的Excel報(bào)表解析技術(shù),提供一種通用的、可定制表格式的Excel表解析方法,本發(fā)明能夠高效、準(zhǔn)確的處理此類Excel報(bào)表的解析問題。
技術(shù)方案:一種可定制表格式的Excel表解析方法,包括如下步驟:
步驟1:根據(jù)水調(diào)業(yè)務(wù)需求,定義所需要解析的Excel表相對應(yīng)的XML格式的配置文件;
步驟2:通過瀏覽器將Excel文件上傳至Web服務(wù)器后,調(diào)用POI(文件解析類庫)解析該文件,并將其以文件流的形式存儲在File對象中,如果解析成功,則進(jìn)入步驟3;否則,進(jìn)入步驟7;
步驟3:根據(jù)上傳文件的文件名查找索引文件(文件格式為XML),根據(jù)索引文件獲取該文件的目標(biāo)數(shù)據(jù)表及相對應(yīng)的XML配置文件信息,調(diào)用Dom4j(XML解析類庫)解析此XML配置文件,成功則進(jìn)入步驟4,否則進(jìn)入步驟7;
步驟4:根據(jù)XML配置文件獲取相應(yīng)數(shù)據(jù)表字段、特殊節(jié)點(diǎn)坐標(biāo)等輔助信息,從而解析文件內(nèi)容并將需要入庫的Excel信息封裝成數(shù)據(jù)對象,如果成功,則進(jìn)入步驟5;否則進(jìn)入步驟7;
步驟5:使用Hibernate實(shí)現(xiàn)數(shù)據(jù)入庫;如果成功,則進(jìn)入步驟6;否則,進(jìn)入步驟7;
步驟6:將上傳文件備份至Web服務(wù)器,結(jié)束流程;
步驟7:記錄錯誤日志并向用戶返回友好的出錯提示信息,結(jié)束流程。
其中,步驟1中根據(jù)水調(diào)業(yè)務(wù)需求,定義的XML格式的配置文件有兩類:
第一類為XML格式的索引文件,其存儲的基本形式為一種Excel文件名形式對應(yīng)多個目標(biāo)數(shù)據(jù)庫表名和一個XML配置文件名;第二類為XML格式的EXCEL表格解析輔助文件,其存儲的內(nèi)容為數(shù)據(jù)庫表字段信息,特殊節(jié)點(diǎn)坐標(biāo)信息等。
步驟2中上傳文件調(diào)用Java文件解析類庫POI進(jìn)行解析。
步驟3中使用索引文件以鍵值對的形式存儲上傳文件的目標(biāo)數(shù)據(jù)表信息及相對應(yīng)的XML配置文件信息,然后根據(jù)該配置文件名查找配置文件,并使用Java調(diào)用Dom4j(XML解析類庫)解析該配置文件。
步驟4為本發(fā)明的核心內(nèi)容,由于需解析復(fù)雜多樣的流域水調(diào)業(yè)務(wù)Excel表格,解析輔助配置文件中包含了大量特殊節(jié)點(diǎn)信息。步驟4中結(jié)合XML配置文件的數(shù)據(jù)庫表字段信息,通過Java的反射機(jī)制將Excel表格信息動態(tài)封裝成數(shù)據(jù)對象;結(jié)合XML配置文件的特殊節(jié)點(diǎn)坐標(biāo)信息實(shí)現(xiàn)單Excel導(dǎo)入多數(shù)據(jù)庫表的業(yè)務(wù)需求。
步驟5中使用Hibernate實(shí)現(xiàn)數(shù)據(jù)入庫時(shí),如果有數(shù)據(jù)入庫失敗,則通過Spring的事務(wù)管理機(jī)制對數(shù)據(jù)庫進(jìn)行回滾,以保持?jǐn)?shù)據(jù)的一致性。
本發(fā)明采用上述技術(shù)方案,具有以下有益效果:通過可配置文件,實(shí)現(xiàn)了流域水調(diào)業(yè)務(wù)可定制復(fù)雜Excel表格導(dǎo)入多數(shù)據(jù)庫表的業(yè)務(wù)需求;動態(tài)導(dǎo)入表格,導(dǎo)入過程對用戶來說是透明的,用戶無需手工選擇導(dǎo)入表格條件;支持形式復(fù)雜,格式不同的Excel的導(dǎo)入;精確的錯誤信息提示機(jī)制和事務(wù)管理機(jī)制,保持錄入數(shù)據(jù)庫數(shù)據(jù)的準(zhǔn)確性和數(shù)據(jù)一致性。
附圖說明
圖1為本發(fā)明實(shí)施例的方法流程圖。
具體實(shí)施方式
下面結(jié)合具體實(shí)施例,進(jìn)一步闡明本發(fā)明,應(yīng)理解這些實(shí)施例僅用于說明本發(fā)明而不用于限制本發(fā)明的范圍,在閱讀了本發(fā)明之后,本領(lǐng)域技術(shù)人員對本發(fā)明的各種等價(jià)形式的修改均落于本申請所附權(quán)利要求所限定的范圍。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于河海大學(xué),未經(jīng)河海大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310080372.5/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:車用LED燈
- 下一篇:燈飾結(jié)構(gòu)
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F17-00 特別適用于特定功能的數(shù)字計(jì)算設(shè)備或數(shù)據(jù)處理設(shè)備或數(shù)據(jù)處理方法
G06F17-10 .復(fù)雜數(shù)學(xué)運(yùn)算的
G06F17-20 .處理自然語言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)
- 一種基于異步處理的大數(shù)據(jù)量Excel文件導(dǎo)出方法
- 一種數(shù)據(jù)EXCEL導(dǎo)入和導(dǎo)出的工具
- 一種Excel合并方法和系統(tǒng)
- 基于數(shù)據(jù)配置生成Excel表格和圖例的系統(tǒng)及方法
- 一種業(yè)務(wù)系統(tǒng)導(dǎo)入EXCEL數(shù)據(jù)的方法
- 一種Excel數(shù)據(jù)文件的處理方法及裝置
- 一種excel導(dǎo)入導(dǎo)出的實(shí)現(xiàn)方法及裝置
- Excel數(shù)據(jù)的導(dǎo)出方法及裝置、電子設(shè)備
- 一種大數(shù)據(jù)excel文件導(dǎo)入的系統(tǒng)及方法
- 腳本生成方法、裝置、計(jì)算機(jī)設(shè)備及存儲介質(zhì)





