本發(fā)明涉及xml技術(shù)和數(shù)據(jù)庫技術(shù),尤其涉及一種基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法和裝置。
背景技術(shù):
隨著可擴(kuò)展標(biāo)記語言(extensiblemarkuplanguage,簡稱xml)技術(shù)的發(fā)展,xml技術(shù)以及xml數(shù)據(jù)格式應(yīng)用到了軟件開發(fā)技術(shù)的各個(gè)方面。
可以采用xml數(shù)據(jù)格式存放單詞,從而將單詞的詞頭、釋義、例句釋義、與其他單詞的關(guān)聯(lián)信息等內(nèi)容和信息,存放到字典xml信息文件中。從而如何建立一個(gè)可以快速進(jìn)行基于xml數(shù)據(jù)格式的單詞內(nèi)容的檢索,成為一個(gè)亟待解決的問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法和裝置,用以解決現(xiàn)有技術(shù)中如何建立一個(gè)可以快速進(jìn)行基于xml數(shù)據(jù)格式的單詞內(nèi)容的檢索的問題。
本發(fā)明的一方面是提供一種基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法,包括:
采用dom4j解析包,將字典xml信息文件解析為文件對(duì)象,所述文件對(duì)象中包括n個(gè)單詞,n為正整數(shù);
遍歷所述文件對(duì)象,確定n個(gè)單詞的屬性標(biāo)簽;
根據(jù)各屬性標(biāo)簽,在所述文件對(duì)象中確定與各屬性標(biāo)簽對(duì)應(yīng)的單詞數(shù)據(jù),所述單詞數(shù)據(jù)包括單詞內(nèi)容和單詞標(biāo)識(shí);
采用字符串拼接方式,將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)拼接為各數(shù)據(jù)庫插入語句;
根據(jù)各數(shù)據(jù)庫插入語句,將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中;
接收查詢索引指令,根據(jù)所述查詢索引指令在所述數(shù)據(jù)庫中查詢各單詞數(shù)據(jù),所述查詢索引指令包括單詞標(biāo)識(shí)。
如上所述的方法中,所述遍歷所述文件對(duì)象,確定n個(gè)單詞的屬性標(biāo)簽,包括:
遍歷所述文件對(duì)象的根節(jié)點(diǎn);
獲取所述根節(jié)點(diǎn)下的單詞節(jié)點(diǎn)列表,所述單詞節(jié)點(diǎn)列表中包括n個(gè)單詞的屬性標(biāo)簽,其中,所述屬性標(biāo)簽為詞頭標(biāo)簽、或釋義標(biāo)簽、或例句釋義標(biāo)簽。
如上所述的方法中,所述根據(jù)各屬性標(biāo)簽,在所述文件對(duì)象中確定與各屬性標(biāo)簽對(duì)應(yīng)的單詞數(shù)據(jù),所述單詞數(shù)據(jù)包括單詞內(nèi)容和單詞標(biāo)識(shí),包括:
根據(jù)各詞頭標(biāo)簽,在所述文件對(duì)象中確定與各詞頭標(biāo)簽對(duì)應(yīng)的單詞詞頭數(shù)據(jù),所述單詞詞頭數(shù)據(jù)包括單詞詞頭內(nèi)容和所述單詞標(biāo)識(shí);
或者,根據(jù)各釋義標(biāo)簽,在所述文件對(duì)象中確定與各釋義標(biāo)簽對(duì)應(yīng)的單詞釋義數(shù)據(jù),所述單詞釋義數(shù)據(jù)包括單詞釋義內(nèi)容和所述單詞標(biāo)識(shí);
或者,根據(jù)各例句釋義標(biāo)簽,在所述文件對(duì)象中確定與各例句釋義標(biāo)簽對(duì)應(yīng)的單詞例句釋義數(shù)據(jù),所述單詞例句釋義數(shù)據(jù)包括單詞例句釋義內(nèi)容和所述單詞標(biāo)識(shí)。
如上所述的方法中,所述采用字符串拼接方式,將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)拼接為各數(shù)據(jù)庫插入語句,包括:
所述采用字符串拼接方式,將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)拼接為各數(shù)據(jù)庫插入語句,并將各數(shù)據(jù)庫插入語句插入至數(shù)據(jù)庫中的單詞列表中的預(yù)設(shè)字段。
如上所述的方法中,所述根據(jù)各數(shù)據(jù)庫插入語句,將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中,包括:
采用jdbc根據(jù)各數(shù)據(jù)庫插入語句,將各單詞數(shù)據(jù)存入預(yù)設(shè)數(shù)據(jù)結(jié)構(gòu)中,以將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中。
本發(fā)明的另一方面是提供一種基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索裝置,包括:
解析模塊,用于采用dom4j解析包,將字典xml信息文件解析為文件 對(duì)象,所述文件對(duì)象中包括n個(gè)單詞,n為正整數(shù);
標(biāo)簽確定模塊,用于遍歷所述文件對(duì)象,確定n個(gè)單詞的屬性標(biāo)簽;
數(shù)據(jù)確定模塊,用于根據(jù)各屬性標(biāo)簽,在所述文件對(duì)象中確定與各屬性標(biāo)簽對(duì)應(yīng)的單詞數(shù)據(jù),所述單詞數(shù)據(jù)包括單詞內(nèi)容和單詞標(biāo)識(shí);
拼接模塊,用于采用字符串拼接方式,將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)拼接為各數(shù)據(jù)庫插入語句;
存儲(chǔ)模塊,用于根據(jù)各數(shù)據(jù)庫插入語句,將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中;
查詢模塊,用于接收查詢索引指令,根據(jù)所述查詢索引指令在所述數(shù)據(jù)庫中查詢各單詞數(shù)據(jù),所述查詢索引指令包括單詞標(biāo)識(shí)。
如上所述的裝置中,所述標(biāo)簽確定模塊,包括:
遍歷子模塊,用于遍歷所述文件對(duì)象的根節(jié)點(diǎn);
獲取子模塊,用于獲取所述根節(jié)點(diǎn)下的單詞節(jié)點(diǎn)列表,所述單詞節(jié)點(diǎn)列表中包括n個(gè)單詞的屬性標(biāo)簽,其中,所述屬性標(biāo)簽為詞頭標(biāo)簽、或釋義標(biāo)簽、或例句釋義標(biāo)簽。
如上所述的裝置中,所述數(shù)據(jù)確定模塊,具體用于:
根據(jù)各詞頭標(biāo)簽,在所述文件對(duì)象中確定與各詞頭標(biāo)簽對(duì)應(yīng)的單詞詞頭數(shù)據(jù),所述單詞詞頭數(shù)據(jù)包括單詞詞頭內(nèi)容和所述單詞標(biāo)識(shí);
或者,根據(jù)各釋義標(biāo)簽,在所述文件對(duì)象中確定與各釋義標(biāo)簽對(duì)應(yīng)的單詞釋義數(shù)據(jù),所述單詞釋義數(shù)據(jù)包括單詞釋義內(nèi)容和所述單詞標(biāo)識(shí);
或者,根據(jù)各例句釋義標(biāo)簽,在所述文件對(duì)象中確定與各例句釋義標(biāo)簽對(duì)應(yīng)的單詞例句釋義數(shù)據(jù),所述單詞例句釋義數(shù)據(jù)包括單詞例句釋義內(nèi)容和所述單詞標(biāo)識(shí)。
如上所述的裝置中,所述拼接模塊,具體用于:
所述采用字符串拼接方式,將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)拼接為各數(shù)據(jù)庫插入語句,并將各數(shù)據(jù)庫插入語句插入至數(shù)據(jù)庫中的單詞列表中的預(yù)設(shè)字段。
如上所述的裝置中,所述存儲(chǔ)模塊,具體用于:
采用jdbc根據(jù)各數(shù)據(jù)庫插入語句,將各單詞數(shù)據(jù)存入預(yù)設(shè)數(shù)據(jù)結(jié)構(gòu)中,以將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中。
本實(shí)施例通過采用dom4j解析包,將字典xml信息文件解析為文件對(duì) 象,文件對(duì)象中包括n個(gè)單詞;循環(huán)遍歷文件對(duì)象,獲取文件對(duì)象中n個(gè)單詞的屬性標(biāo)簽;根據(jù)各屬性標(biāo)簽,在文件對(duì)象中確定與各屬性標(biāo)簽對(duì)應(yīng)的單詞數(shù)據(jù),單詞數(shù)據(jù)包括了單詞內(nèi)容和單詞標(biāo)識(shí);將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí),通過字符串拼接為各數(shù)據(jù)庫插入語句;根據(jù)各數(shù)據(jù)庫插入語句,將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中;接收攜帶了單詞標(biāo)識(shí)的查詢索引指令,根據(jù)查詢索引指令在數(shù)據(jù)庫中查詢各單詞數(shù)據(jù)。從而提供了一種基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法,可以將字典xml信息文件中解析為文件對(duì)象,遍歷出各個(gè)單詞的屬性標(biāo)簽,各個(gè)單詞的單詞內(nèi)容和單詞標(biāo)識(shí)等單詞數(shù)據(jù),通過將屬性標(biāo)簽和單詞標(biāo)識(shí)拼接為數(shù)據(jù)庫插入語句,從而通過數(shù)據(jù)庫插入語句可以將字典xml信息文件中單詞的各個(gè)單詞數(shù)據(jù),存放到數(shù)據(jù)庫中;進(jìn)而便于根據(jù)查詢索引指令在數(shù)據(jù)庫中查詢各單詞數(shù)據(jù),可以實(shí)現(xiàn)快速的檢索單詞的各個(gè)單詞數(shù)據(jù)。
附圖說明
圖1為本發(fā)明實(shí)施例一提供的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法的流程圖;
圖2為本發(fā)明實(shí)施例二提供的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法的流程圖;
圖3為本發(fā)明實(shí)施例三提供的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索裝置的結(jié)構(gòu)示意圖;
圖4為本發(fā)明實(shí)施例四提供的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
圖1為本發(fā)明實(shí)施例一提供的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法 的流程圖,如圖1所示,本實(shí)施例的方法包括:
步驟101、采用dom4j解析包,將字典xml信息文件解析為文件對(duì)象,文件對(duì)象中包括n個(gè)單詞,n為正整數(shù)。
在本實(shí)施例中,具體的,dom4j是一個(gè)java的xmlapi,類似于jdom,用來讀寫xml文件的。dom4j是一個(gè)十分優(yōu)秀的javaxmlapi,具有性能優(yōu)異、功能強(qiáng)大和極其易使用的特點(diǎn),同時(shí)它也是一個(gè)開放源代碼的軟件,可以在sourceforge上找到它。越來越多的java軟件都在使用dom4j來讀寫xml,特別值得一提的是連sun的jaxm也在用dom4j。這已經(jīng)是必須使用的jar包,hibernate也用它來讀寫配置文件。
引入dom4j的開發(fā)包,采用dom4j解析包去解析字典xml信息文件,字典xml信息文件中包括了n個(gè)單詞,單詞包括了單詞的詞頭內(nèi)容、單詞的釋義內(nèi)容、單詞的例句釋義內(nèi)容、單詞的關(guān)聯(lián)關(guān)系、單詞的時(shí)態(tài)內(nèi)容等等;n是一個(gè)正整數(shù)。從而將字典xml信息文件解析為文件(document,簡稱document)對(duì)象。具體來說,可以采用代碼saxreaderreader=newsaxreader();documentdocument=reader.read(newfile("d:/a.xml"));解析字典xml信息文件為document對(duì)象。
步驟102、遍歷文件對(duì)象,確定n個(gè)單詞的屬性標(biāo)簽。
在本實(shí)施例中,具體的,循環(huán)遍歷文件對(duì)象,即循環(huán)遍歷document對(duì)象,從而可以獲取到n個(gè)單詞的屬性標(biāo)簽。
步驟103、根據(jù)各屬性標(biāo)簽,在文件對(duì)象中確定與各屬性標(biāo)簽對(duì)應(yīng)的單詞數(shù)據(jù),單詞數(shù)據(jù)包括單詞內(nèi)容和單詞標(biāo)識(shí)。
在本實(shí)施例中,具體的,由于文件對(duì)象中具有n個(gè)單詞的單詞數(shù)據(jù),且單詞數(shù)據(jù)與屬性標(biāo)簽相對(duì)應(yīng)。從而可以根據(jù)步驟102中確定的各屬性標(biāo)簽,在文件對(duì)象中確定出與各屬性標(biāo)簽對(duì)應(yīng)的單詞數(shù)據(jù),其中,單詞數(shù)據(jù)包括了單詞內(nèi)容和單詞標(biāo)識(shí);單詞標(biāo)識(shí)為單詞的唯一標(biāo)識(shí)(identification,簡稱id)。
步驟104、采用字符串拼接方式,將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)拼接為各數(shù)據(jù)庫插入語句。
在本實(shí)施例中,具體的,將步驟103中各屬性標(biāo)簽、以及每次循環(huán)遍歷出的與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí),分別采用字符串拼接方式拼接成各數(shù)據(jù)庫插入語句。具體來說,將一個(gè)單詞的屬性標(biāo)簽、以及一個(gè)單詞的單詞標(biāo)識(shí), 拼接為一個(gè)數(shù)據(jù)庫插入語句;依次執(zhí)行該過程,從而將每次循環(huán)中遍歷出的各個(gè)單詞數(shù)據(jù),通過字符串拼接為各個(gè)數(shù)據(jù)庫插入語句。
步驟105、根據(jù)各數(shù)據(jù)庫插入語句,將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中。
在本實(shí)施例中,具體的,批量執(zhí)行拼接好的各數(shù)據(jù)庫插入語句,通過數(shù)據(jù)庫插入語句從而將各單詞數(shù)據(jù)存入到數(shù)據(jù)庫中,從而便于后續(xù)進(jìn)行查詢索引。
步驟106、接收查詢索引指令,根據(jù)查詢索引指令在數(shù)據(jù)庫中查詢各單詞數(shù)據(jù),查詢索引指令包括單詞標(biāo)識(shí)。
在本實(shí)施例中,具體的,用戶可以輸入一個(gè)查詢索引指令,從而接收到用戶輸入的攜帶了單詞標(biāo)識(shí)的查詢索引指令,然后根據(jù)查詢索引指令中的單詞標(biāo)識(shí),在存儲(chǔ)了各單詞數(shù)據(jù)的數(shù)據(jù)庫中查詢到相應(yīng)的單詞數(shù)據(jù)。
舉例來說,可以在微信的公眾賬號(hào)中輸入一個(gè)查詢索引指令,查詢索引指令包括單詞標(biāo)識(shí),從而可以根據(jù)單詞標(biāo)識(shí),從預(yù)設(shè)的存儲(chǔ)了各單詞數(shù)據(jù)的數(shù)據(jù)庫中查詢到與單詞標(biāo)識(shí)對(duì)應(yīng)的單詞數(shù)據(jù)。
本實(shí)施例通過采用dom4j解析包,將字典xml信息文件解析為文件對(duì)象,文件對(duì)象中包括n個(gè)單詞;循環(huán)遍歷文件對(duì)象,獲取文件對(duì)象中n個(gè)單詞的屬性標(biāo)簽;根據(jù)各屬性標(biāo)簽,在文件對(duì)象中確定與各屬性標(biāo)簽對(duì)應(yīng)的單詞數(shù)據(jù),單詞數(shù)據(jù)包括了單詞內(nèi)容和單詞標(biāo)識(shí);將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí),通過字符串拼接為各數(shù)據(jù)庫插入語句;根據(jù)各數(shù)據(jù)庫插入語句,將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中;接收攜帶了單詞標(biāo)識(shí)的查詢索引指令,根據(jù)查詢索引指令在數(shù)據(jù)庫中查詢各單詞數(shù)據(jù)。從而提供了一種基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法,可以將字典xml信息文件中解析為文件對(duì)象,遍歷出各個(gè)單詞的屬性標(biāo)簽,各個(gè)單詞的單詞內(nèi)容和單詞標(biāo)識(shí)等單詞數(shù)據(jù),通過將屬性標(biāo)簽和單詞標(biāo)識(shí)拼接為數(shù)據(jù)庫插入語句,從而通過數(shù)據(jù)庫插入語句可以將字典xml信息文件中單詞的各個(gè)單詞數(shù)據(jù),存放到數(shù)據(jù)庫中;進(jìn)而便于根據(jù)查詢索引指令在數(shù)據(jù)庫中查詢各單詞數(shù)據(jù),可以實(shí)現(xiàn)快速的檢索單詞的各個(gè)單詞數(shù)據(jù)。
圖2為本發(fā)明實(shí)施例二提供的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法的流程圖,如圖2所示,在實(shí)施例一的基礎(chǔ)上,步驟102,包括:
步驟1021、遍歷文件對(duì)象的根節(jié)點(diǎn)。
在本實(shí)施例中,具體的,字典xml信息文件解析為的文件對(duì)象,具有多級(jí)節(jié)點(diǎn),首先文件對(duì)象具有根節(jié)點(diǎn),在根節(jié)點(diǎn)下具有單詞節(jié)點(diǎn)列表。首先,獲取文件對(duì)象、即document對(duì)象的根節(jié)點(diǎn)。
步驟1022、獲取根節(jié)點(diǎn)下的單詞節(jié)點(diǎn)列表,單詞節(jié)點(diǎn)列表中包括n個(gè)單詞的屬性標(biāo)簽,其中,屬性標(biāo)簽為詞頭標(biāo)簽、或釋義標(biāo)簽、或例句釋義標(biāo)簽。
在本實(shí)施例中,具體的,由于根節(jié)點(diǎn)下具有單詞節(jié)點(diǎn)列表,從而可以獲取到根節(jié)點(diǎn)下的單詞節(jié)點(diǎn)列表,單詞節(jié)點(diǎn)為根節(jié)點(diǎn)的子級(jí)節(jié)點(diǎn)。單詞節(jié)點(diǎn)列表中包括n個(gè)單詞的屬性標(biāo)簽,其中,屬性標(biāo)簽可以是詞頭標(biāo)簽、也可以是釋義標(biāo)簽、也可以是例句釋義標(biāo)簽。
詞頭標(biāo)簽,是對(duì)于單詞的詞頭的標(biāo)識(shí),舉例來說,對(duì)于單詞name,name為單詞name的詞頭,可以采用a作為詞頭標(biāo)簽。釋義標(biāo)簽,是對(duì)于單詞的釋義的標(biāo)識(shí),舉例來說,對(duì)于單詞name,名字為單詞name的釋義,可以采用b作為釋義標(biāo)簽。例句釋義標(biāo)簽,是對(duì)于單詞的例句釋義的標(biāo)識(shí),舉例來說,對(duì)于單詞name,“mynameisaa”為單詞name的例句釋義,可以采用c作為例句釋義標(biāo)簽。
具體來說,首先獲取document對(duì)象的根節(jié)點(diǎn),然后獲取根節(jié)點(diǎn)下的letter節(jié)點(diǎn),再獲取letter節(jié)點(diǎn)下的e節(jié)點(diǎn)列表,e節(jié)點(diǎn)列表就是單詞節(jié)點(diǎn)列表;對(duì)e節(jié)點(diǎn)列表進(jìn)行遍歷,可以獲取e節(jié)點(diǎn)列表中的詞頭標(biāo)簽,詞頭標(biāo)簽采用hg進(jìn)行表示?;蛘撸紫全@取document對(duì)象的根節(jié)點(diǎn),然后獲取根節(jié)點(diǎn)下的letter節(jié)點(diǎn),再獲取letter節(jié)點(diǎn)下的e節(jié)點(diǎn)列表,e節(jié)點(diǎn)列表就是單詞節(jié)點(diǎn)列表;對(duì)e節(jié)點(diǎn)列表進(jìn)行遍歷,可以獲取e節(jié)點(diǎn)列表中的釋義標(biāo)簽,釋義標(biāo)簽采用se1/se2/df進(jìn)行表示。首先獲取document對(duì)象的根節(jié)點(diǎn),然后獲取根節(jié)點(diǎn)下的letter節(jié)點(diǎn),再獲取letter節(jié)點(diǎn)下的e節(jié)點(diǎn)列表,e節(jié)點(diǎn)列表就是單詞節(jié)點(diǎn)列表;對(duì)e節(jié)點(diǎn)列表進(jìn)行遍歷,可以獲取e節(jié)點(diǎn)列表中的例句釋義標(biāo)簽,例句釋義標(biāo)簽采用se1/se2/eg/tr進(jìn)行表示。對(duì)于詞頭標(biāo)簽、釋義標(biāo)簽、例句釋義標(biāo)簽,這三種標(biāo)簽的遍歷獲取過程,需要分別進(jìn)行。
步驟103包括:
步驟1031、根據(jù)各詞頭標(biāo)簽,在文件對(duì)象中確定與各詞頭標(biāo)簽對(duì)應(yīng)的單詞詞頭數(shù)據(jù),單詞詞頭數(shù)據(jù)包括單詞詞頭內(nèi)容和單詞標(biāo)識(shí);
或者,步驟103包括:步驟1032、根據(jù)各釋義標(biāo)簽,在文件對(duì)象中確定 與各釋義標(biāo)簽對(duì)應(yīng)的單詞釋義數(shù)據(jù),單詞釋義數(shù)據(jù)包括單詞釋義內(nèi)容和單詞標(biāo)識(shí);
或者,步驟103包括:步驟1033、根據(jù)各例句釋義標(biāo)簽,在文件對(duì)象中確定與各例句釋義標(biāo)簽對(duì)應(yīng)的單詞例句釋義數(shù)據(jù),單詞例句釋義數(shù)據(jù)包括單詞例句釋義內(nèi)容和單詞標(biāo)識(shí)。
在本實(shí)施例中,具體的,若步驟1022中獲取的是詞頭標(biāo)簽,則步驟103中需要根據(jù)各詞頭標(biāo)簽,在文件對(duì)象中確定與各詞頭標(biāo)簽對(duì)應(yīng)的單詞詞頭數(shù)據(jù),此時(shí)單詞詞頭數(shù)據(jù)為單詞詞頭內(nèi)容和單詞標(biāo)識(shí)。舉例來說,獲取詞頭標(biāo)簽a,則根據(jù)詞頭標(biāo)簽a,獲取與各個(gè)詞頭標(biāo)簽a對(duì)應(yīng)的單詞的詞頭和單詞的唯一標(biāo)識(shí),具體來說,可以獲取到n個(gè)單詞的詞頭。
若步驟1022中獲取的是釋義標(biāo)簽,則步驟103中需要根據(jù)各釋義標(biāo)簽,在文件對(duì)象中確定與各釋義標(biāo)簽對(duì)應(yīng)的單詞釋義數(shù)據(jù),此時(shí)單詞釋義數(shù)據(jù)包括了單詞釋義內(nèi)容和單詞標(biāo)識(shí)。舉例來說,獲取釋義標(biāo)簽b,則根據(jù)釋義標(biāo)簽b,獲取與各個(gè)釋義標(biāo)簽b對(duì)應(yīng)的單詞的釋義和單詞的唯一標(biāo)識(shí)。
若步驟1022中獲取的是例句釋義標(biāo)簽,則步驟103中需要根據(jù)各例句釋義標(biāo)簽,在文件對(duì)象中確定與各例句釋義標(biāo)簽對(duì)應(yīng)的單詞例句釋義數(shù)據(jù),此時(shí)單詞例句釋義數(shù)據(jù)包括了單詞例句釋義內(nèi)容和單詞標(biāo)識(shí)。舉例來說,獲取例句釋義標(biāo)簽c,則根據(jù)例句釋義標(biāo)簽c,獲取與各個(gè)例句釋義標(biāo)簽c對(duì)應(yīng)的單詞的例句釋義和單詞的唯一標(biāo)識(shí)。
步驟104具體包括:采用字符串拼接方式,將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)拼接為各數(shù)據(jù)庫插入語句,并將各數(shù)據(jù)庫插入語句插入至數(shù)據(jù)庫中的單詞列表中的預(yù)設(shè)字段。
在本實(shí)施例中,具體的,在屬性標(biāo)簽為詞頭標(biāo)簽時(shí),由于每次循環(huán)中遍歷出了與詞頭標(biāo)簽對(duì)應(yīng)的單詞詞頭內(nèi)容和單詞標(biāo)識(shí)。可以采用字符串拼接方式,將詞頭標(biāo)簽和單詞標(biāo)識(shí),拼接為數(shù)據(jù)庫插入語句;重復(fù)執(zhí)行拼接的過程,從而可以將各詞頭標(biāo)簽、與各詞頭標(biāo)簽對(duì)應(yīng)的各單詞標(biāo)識(shí),拼接為各數(shù)據(jù)庫插入語句,其中,一個(gè)數(shù)據(jù)庫插入語句由一個(gè)詞頭標(biāo)簽和與該詞頭標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)構(gòu)成。數(shù)據(jù)庫中具有單詞列表,單詞列表可以用letter表來表示;然后可以將各數(shù)據(jù)庫插入語句,插入到數(shù)據(jù)庫中的單詞列表中的預(yù)設(shè)字段中。舉例來說,在循環(huán)遍歷過程中,提取子節(jié)點(diǎn)標(biāo)識(shí),此時(shí)子節(jié)點(diǎn)標(biāo)識(shí)為單詞標(biāo) 識(shí),然后將子節(jié)點(diǎn)標(biāo)識(shí)、詞頭標(biāo)簽hg拼接成mysql語句,然后將拼接成的mysql語句插入數(shù)據(jù)庫中l(wèi)etter表中的idhw字段中。
在屬性標(biāo)簽為釋義標(biāo)簽時(shí),由于每次循環(huán)中遍歷出了與釋義標(biāo)簽對(duì)應(yīng)的單詞釋義內(nèi)容和單詞標(biāo)識(shí)??梢圆捎米址唇臃绞剑瑢⑨屃x標(biāo)簽和單詞標(biāo)識(shí),拼接為數(shù)據(jù)庫插入語句;重復(fù)執(zhí)行拼接的過程,從而可以將各釋義標(biāo)簽、與各釋義標(biāo)簽對(duì)應(yīng)的各單詞標(biāo)識(shí),拼接為各數(shù)據(jù)庫插入語句,其中,一個(gè)數(shù)據(jù)庫插入語句由一個(gè)釋義標(biāo)簽和與該釋義標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)構(gòu)成。數(shù)據(jù)庫中具有單詞列表,單詞列表可以用letter表來表示;然后可以將各數(shù)據(jù)庫插入語句,插入到數(shù)據(jù)庫中的單詞列表中的預(yù)設(shè)字段中。舉例來說,在循環(huán)遍歷過程中,提取子節(jié)點(diǎn)標(biāo)識(shí),此時(shí)子節(jié)點(diǎn)標(biāo)識(shí)為單詞標(biāo)識(shí),然后將子節(jié)點(diǎn)標(biāo)識(shí)、釋義標(biāo)簽se1/se2/df拼接成mysql語句,然后將拼接成的mysql語句插入數(shù)據(jù)庫中l(wèi)etter表中的iddf字段中。
在屬性標(biāo)簽為例句釋義標(biāo)簽時(shí),由于每次循環(huán)中遍歷出了與例句釋義標(biāo)簽對(duì)應(yīng)的單詞例句釋義內(nèi)容和單詞標(biāo)識(shí)??梢圆捎米址唇臃绞?,將例句釋義標(biāo)簽和單詞標(biāo)識(shí),拼接為數(shù)據(jù)庫插入語句;重復(fù)執(zhí)行拼接的過程,從而可以將各例句釋義標(biāo)簽、與各例句釋義標(biāo)簽對(duì)應(yīng)的各單詞標(biāo)識(shí),拼接為各數(shù)據(jù)庫插入語句,其中,一個(gè)數(shù)據(jù)庫插入語句由一個(gè)例句釋義標(biāo)簽和與該例句釋義標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)構(gòu)成。數(shù)據(jù)庫中具有單詞列表,單詞列表可以用letter表來表示;然后可以將各數(shù)據(jù)庫插入語句,插入到數(shù)據(jù)庫中的單詞列表中的預(yù)設(shè)字段中。舉例來說,在循環(huán)遍歷過程中,提取子節(jié)點(diǎn)標(biāo)識(shí),此時(shí)子節(jié)點(diǎn)標(biāo)識(shí)為單詞標(biāo)識(shí),然后將子節(jié)點(diǎn)標(biāo)識(shí)、例句釋義標(biāo)簽se1/se2/eg/tr拼接成mysql語句,然后將拼接成的mysql語句插入數(shù)據(jù)庫中l(wèi)etter表中的idtr字段中。
步驟105具體包括:采用jdbc根據(jù)各數(shù)據(jù)庫插入語句,將各單詞數(shù)據(jù)存入預(yù)設(shè)數(shù)據(jù)結(jié)構(gòu)中,以將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中。
在本實(shí)施例中,具體的,java數(shù)據(jù)庫連接(javadatabaseconnectivity,簡稱jdbc)是一種用于執(zhí)行sql語句的javaapi,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用java語言編寫的類和接口組成。jdbc擴(kuò)展了java的功能,例如,用java和jdbcapi可以發(fā)布含有applet的網(wǎng)頁,而該applet使用的信息可能來自遠(yuǎn)程數(shù)據(jù)庫。
有了jdbcapi,就不必為訪問sybase數(shù)據(jù)庫專門寫一個(gè)程序,為訪問oracle數(shù)據(jù)庫又專門寫一個(gè)程序,或?yàn)樵L問informix數(shù)據(jù)庫又編寫另一個(gè)程序等等,程序員只需用jdbcapi寫一個(gè)程序就夠了,它可向相應(yīng)數(shù)據(jù)庫發(fā)送sql調(diào)用。同時(shí),將java語言和jdbc結(jié)合起來使程序員不必為不同的平臺(tái)編寫不同的應(yīng)用程序,只須寫一遍程序就可以讓它在任何平臺(tái)上運(yùn)行。簡單來說,可以采用jdbcapi,訪問各個(gè)不同的數(shù)據(jù)庫中數(shù)據(jù)。
采用jdbc批量執(zhí)行各數(shù)據(jù)庫插入語句,從而可以將各單詞數(shù)據(jù)存入預(yù)設(shè)數(shù)據(jù)結(jié)構(gòu)中,進(jìn)而將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中。
具體來說,若屬性標(biāo)簽為詞頭標(biāo)簽時(shí),生成了各數(shù)據(jù)庫插入語句,可以將攜帶了單詞詞頭內(nèi)容和單詞標(biāo)識(shí)的單詞詞頭數(shù)據(jù),存入數(shù)據(jù)庫中;之后,可以進(jìn)行英文的查詢索引。若屬性標(biāo)簽為釋義標(biāo)簽時(shí),生成了各數(shù)據(jù)庫插入語句,可以將攜帶了單詞釋義內(nèi)容和單詞標(biāo)識(shí)的單詞釋義數(shù)據(jù),存入數(shù)據(jù)庫中;之后,可以進(jìn)行中文的查詢索引。若屬性標(biāo)簽為例句釋義標(biāo)簽時(shí),生成了各數(shù)據(jù)庫插入語句,可以將攜帶了單詞例句釋義內(nèi)容和單詞標(biāo)識(shí)的單詞例句釋義數(shù)據(jù),存入數(shù)據(jù)庫中;之后,可以進(jìn)行例句的查詢索引。
本實(shí)施例通過遍歷解析形成的文件對(duì)象的根節(jié)點(diǎn),可以獲取到根節(jié)點(diǎn)下的單詞節(jié)點(diǎn)列表,單詞節(jié)點(diǎn)列表中包括n個(gè)單詞的屬性標(biāo)簽,并且屬性標(biāo)簽為詞頭標(biāo)簽、或釋義標(biāo)簽、或例句釋義標(biāo)簽;從而可以根據(jù)詞頭標(biāo)簽、釋義標(biāo)簽、例句釋義標(biāo)簽,分別獲取單詞詞頭內(nèi)容、單詞釋義內(nèi)容、單詞例句釋義數(shù)據(jù),并獲取到單詞標(biāo)識(shí);可以將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)拼接為各數(shù)據(jù)庫插入語句,然后采用jdbc批量執(zhí)行各數(shù)據(jù)庫插入語句,將單詞詞頭內(nèi)容、單詞釋義內(nèi)容、單詞例句釋義數(shù)據(jù)分別存儲(chǔ)到數(shù)據(jù)庫中。從而提供了一種基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法,可以將字典xml信息文件中解析為文件對(duì)象,遍歷出各個(gè)單詞的屬性標(biāo)簽,各個(gè)單詞的單詞內(nèi)容和單詞標(biāo)識(shí)等單詞數(shù)據(jù),通過將屬性標(biāo)簽和單詞標(biāo)識(shí)拼接為數(shù)據(jù)庫插入語句,從而通過數(shù)據(jù)庫插入語句可以將字典xml信息文件中單詞的各個(gè)單詞數(shù)據(jù),存放到數(shù)據(jù)庫中;進(jìn)而便于根據(jù)查詢索引指令在數(shù)據(jù)庫中查詢各單詞數(shù)據(jù),可以實(shí)現(xiàn)快速的檢索單詞的各個(gè)單詞數(shù)據(jù)。同時(shí)采用jdbc批量執(zhí)行各數(shù)據(jù)庫插入語句,可以形成適應(yīng)于不同數(shù)據(jù)庫的執(zhí)行語句和步驟,不需要針對(duì)不同的數(shù)據(jù)庫形成不同的數(shù)據(jù)庫插入語句。
圖3為本發(fā)明實(shí)施例三提供的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索裝置的結(jié)構(gòu)示意圖,如圖3所示,本實(shí)施例提供的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索裝置,包括:
解析模塊31,用于采用dom4j解析包,將字典xml信息文件解析為文件對(duì)象,文件對(duì)象中包括n個(gè)單詞,n為正整數(shù);
標(biāo)簽確定模塊32,用于遍歷文件對(duì)象,確定n個(gè)單詞的屬性標(biāo)簽;
數(shù)據(jù)確定模塊33,用于根據(jù)各屬性標(biāo)簽,在文件對(duì)象中確定與各屬性標(biāo)簽對(duì)應(yīng)的單詞數(shù)據(jù),單詞數(shù)據(jù)包括單詞內(nèi)容和單詞標(biāo)識(shí);
拼接模塊34,用于采用字符串拼接方式,將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)拼接為各數(shù)據(jù)庫插入語句;
存儲(chǔ)模塊35,用于根據(jù)各數(shù)據(jù)庫插入語句,將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中;
查詢模塊36,用于接收查詢索引指令,根據(jù)查詢索引指令在數(shù)據(jù)庫中查詢各單詞數(shù)據(jù),查詢索引指令包括單詞標(biāo)識(shí)。
本實(shí)施例的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索裝置可執(zhí)行本發(fā)明實(shí)施例一提供的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法,其實(shí)現(xiàn)原理相類似,此處不再贅述。
本實(shí)施例通過采用dom4j解析包,將字典xml信息文件解析為文件對(duì)象,文件對(duì)象中包括n個(gè)單詞;循環(huán)遍歷文件對(duì)象,獲取文件對(duì)象中n個(gè)單詞的屬性標(biāo)簽;根據(jù)各屬性標(biāo)簽,在文件對(duì)象中確定與各屬性標(biāo)簽對(duì)應(yīng)的單詞數(shù)據(jù),單詞數(shù)據(jù)包括了單詞內(nèi)容和單詞標(biāo)識(shí);將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí),通過字符串拼接為各數(shù)據(jù)庫插入語句;根據(jù)各數(shù)據(jù)庫插入語句,將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中;接收攜帶了單詞標(biāo)識(shí)的查詢索引指令,根據(jù)查詢索引指令在數(shù)據(jù)庫中查詢各單詞數(shù)據(jù)。從而提供了一種基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法,可以將字典xml信息文件中解析為文件對(duì)象,遍歷出各個(gè)單詞的屬性標(biāo)簽,各個(gè)單詞的單詞內(nèi)容和單詞標(biāo)識(shí)等單詞數(shù)據(jù),通過將屬性標(biāo)簽和單詞標(biāo)識(shí)拼接為數(shù)據(jù)庫插入語句,從而通過數(shù)據(jù)庫插入語句可以將字典xml信息文件中單詞的各個(gè)單詞數(shù)據(jù),存放到數(shù)據(jù)庫中;進(jìn)而便于根據(jù)查詢索引指令在數(shù)據(jù)庫中查詢各單詞數(shù)據(jù),可以實(shí)現(xiàn)快速的檢索單詞的各個(gè)單詞數(shù)據(jù)。
圖4為本發(fā)明實(shí)施例四提供的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索裝置 的結(jié)構(gòu)示意圖,在實(shí)施例三的基礎(chǔ)上,如圖4所示,本實(shí)施例提供的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索裝置,標(biāo)簽確定模塊32,包括:
遍歷子模塊321,用于遍歷文件對(duì)象的根節(jié)點(diǎn);
獲取子模塊322,用于獲取根節(jié)點(diǎn)下的單詞節(jié)點(diǎn)列表,單詞節(jié)點(diǎn)列表中包括n個(gè)單詞的屬性標(biāo)簽,其中,屬性標(biāo)簽為詞頭標(biāo)簽、或釋義標(biāo)簽、或例句釋義標(biāo)簽。
數(shù)據(jù)確定模塊33,具體用于:
根據(jù)各詞頭標(biāo)簽,在文件對(duì)象中確定與各詞頭標(biāo)簽對(duì)應(yīng)的單詞詞頭數(shù)據(jù),單詞詞頭數(shù)據(jù)包括單詞詞頭內(nèi)容和單詞標(biāo)識(shí);
或者,根據(jù)各釋義標(biāo)簽,在文件對(duì)象中確定與各釋義標(biāo)簽對(duì)應(yīng)的單詞釋義數(shù)據(jù),單詞釋義數(shù)據(jù)包括單詞釋義內(nèi)容和單詞標(biāo)識(shí);
或者,根據(jù)各例句釋義標(biāo)簽,在文件對(duì)象中確定與各例句釋義標(biāo)簽對(duì)應(yīng)的單詞例句釋義數(shù)據(jù),單詞例句釋義數(shù)據(jù)包括單詞例句釋義內(nèi)容和單詞標(biāo)識(shí)。
拼接模塊34,具體用于:
采用字符串拼接方式,將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)拼接為各數(shù)據(jù)庫插入語句,并將各數(shù)據(jù)庫插入語句插入至數(shù)據(jù)庫中的單詞列表中的預(yù)設(shè)字段。
存儲(chǔ)模塊35,具體用于:
采用jdbc根據(jù)各數(shù)據(jù)庫插入語句,將各單詞數(shù)據(jù)存入預(yù)設(shè)數(shù)據(jù)結(jié)構(gòu)中,以將各單詞數(shù)據(jù)存入數(shù)據(jù)庫中。
本實(shí)施例的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索裝置可執(zhí)行本發(fā)明實(shí)施例二提供的基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法,其實(shí)現(xiàn)原理相類似,此處不再贅述。
本實(shí)施例通過遍歷解析形成的文件對(duì)象的根節(jié)點(diǎn),可以獲取到根節(jié)點(diǎn)下的單詞節(jié)點(diǎn)列表,單詞節(jié)點(diǎn)列表中包括n個(gè)單詞的屬性標(biāo)簽,并且屬性標(biāo)簽為詞頭標(biāo)簽、或釋義標(biāo)簽、或例句釋義標(biāo)簽;從而可以根據(jù)詞頭標(biāo)簽、釋義標(biāo)簽、例句釋義標(biāo)簽,分別獲取單詞詞頭內(nèi)容、單詞釋義內(nèi)容、單詞例句釋義數(shù)據(jù),并獲取到單詞標(biāo)識(shí);可以將各屬性標(biāo)簽、與各屬性標(biāo)簽對(duì)應(yīng)的單詞標(biāo)識(shí)拼接為各數(shù)據(jù)庫插入語句,然后采用jdbc批量執(zhí)行各數(shù)據(jù)庫插入語句,將單詞詞頭內(nèi)容、單詞釋義內(nèi)容、單詞例句釋義數(shù)據(jù)分別存儲(chǔ)到數(shù)據(jù)庫中。 從而提供了一種基于xml數(shù)據(jù)格式的單詞內(nèi)容檢索方法,可以將字典xml信息文件中解析為文件對(duì)象,遍歷出各個(gè)單詞的屬性標(biāo)簽,各個(gè)單詞的單詞內(nèi)容和單詞標(biāo)識(shí)等單詞數(shù)據(jù),通過將屬性標(biāo)簽和單詞標(biāo)識(shí)拼接為數(shù)據(jù)庫插入語句,從而通過數(shù)據(jù)庫插入語句可以將字典xml信息文件中單詞的各個(gè)單詞數(shù)據(jù),存放到數(shù)據(jù)庫中;進(jìn)而便于根據(jù)查詢索引指令在數(shù)據(jù)庫中查詢各單詞數(shù)據(jù),可以實(shí)現(xiàn)快速的檢索單詞的各個(gè)單詞數(shù)據(jù)。同時(shí)采用jdbc批量執(zhí)行各數(shù)據(jù)庫插入語句,可以形成適應(yīng)于不同數(shù)據(jù)庫的執(zhí)行語句和步驟,不需要針對(duì)不同的數(shù)據(jù)庫形成不同的數(shù)據(jù)庫插入語句。
本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述各方法實(shí)施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成。前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。該程序在執(zhí)行時(shí),執(zhí)行包括上述各方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:rom、ram、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
最后應(yīng)說明的是:以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。