李 猛 甘新玲 李 永
(濱州學(xué)院計(jì)算機(jī)科學(xué)技術(shù)系,山東 濱州 256603)
通過(guò)分析得出本系統(tǒng)主要設(shè)計(jì)目標(biāo)包括以下六個(gè)方面:
(1)系統(tǒng)最終實(shí)現(xiàn)多種形式的資源檢索,包括文檔、音頻、視頻以及圖片。
(2)具備高級(jí)檢索功能,其中包括按所需詞查詢,按排除詞查詢,多詞聯(lián)合查詢。
(3)對(duì)于用戶輸入的關(guān)鍵詞具備拼音-漢字識(shí)別轉(zhuǎn)換功能,例如輸入“pingguo”,則搜索結(jié)果會(huì)按照“蘋(píng)果”一詞進(jìn)行檢索并顯示與之相關(guān)的資源。
(4)支持文檔預(yù)覽和流媒體播放功能。用戶可以在線瀏覽文檔、播放視頻。
(5)后臺(tái)管理功能。后臺(tái)管理包括用戶管理、服務(wù)器管理、資源管理模塊。
(6)各服務(wù)器上的用戶可以對(duì)自己提供的資源進(jìn)行一些基本信息的維護(hù),主要包括資源刪除與修改。
局域網(wǎng)內(nèi)有多臺(tái)服務(wù)器,各服務(wù)器之間通過(guò)RMI技術(shù)進(jìn)行通信。本系統(tǒng)突破了傳統(tǒng)的“主從服務(wù)器”的設(shè)計(jì),采用了“平等服務(wù)器”的設(shè)計(jì)概念。即局域網(wǎng)內(nèi)的所有主機(jī)均為服務(wù)器,并且每臺(tái)服務(wù)器均運(yùn)行維護(hù)一個(gè)服務(wù)器列表。當(dāng)有新的服務(wù)器開(kāi)啟或關(guān)閉時(shí),其他服務(wù)器會(huì)收到相應(yīng)的注冊(cè)或注銷的指令,以此來(lái)維護(hù)服務(wù)器列表。每臺(tái)服務(wù)器上的資源被索引到Web容器根目錄下的test.xml文件中,本系統(tǒng)通過(guò)解析XML文件以獲得資源的具體信息。XML解析模塊通過(guò)采用dom4j技術(shù)來(lái)實(shí)現(xiàn)XML文件的處理,極大提高了搜索的效率。當(dāng)?shù)谝淮芜\(yùn)行環(huán)境時(shí),系統(tǒng)自動(dòng)檢測(cè)是否建立全文索引,如果沒(méi)有系統(tǒng)將自動(dòng)在后臺(tái)開(kāi)辟線程,建立全文索引。全文索引支 持 doc、xls、ppt、docx、xlsx、pptx、txt、wps、dps、rtf、pdf、zip、rar共十三種文件格式的全文索引。

圖1 啟動(dòng)功能模塊結(jié)構(gòu)圖
系統(tǒng)結(jié)構(gòu)化設(shè)計(jì)的核心是把模塊分解設(shè)計(jì),采用自頂向下、逐層分解的方法,整個(gè)系統(tǒng)劃分成多個(gè)子模塊,分別完成不同的功能,各模塊具有一定的獨(dú)立性,降低系統(tǒng)的復(fù)雜性和耦合性。本系統(tǒng)分為啟動(dòng)功能模塊和資源預(yù)覽功能模塊,結(jié)構(gòu)圖分別如圖1所示。
針對(duì)資源特征以及本系統(tǒng)的搜索與共享特性,結(jié)合局域網(wǎng)內(nèi)服務(wù)器的IP屬性,在XML文件中設(shè)立了以下表述字段。

表1 資源表述屬性字段
服務(wù)器的注冊(cè)/注銷模塊用以解決局域網(wǎng)內(nèi)的各個(gè)服務(wù)器之間的識(shí)別問(wèn)題,使各服務(wù)器進(jìn)行維護(hù)本機(jī)的服務(wù)器列表。每臺(tái)服務(wù)器運(yùn)行用于通信的Socket程序,當(dāng)局域網(wǎng)內(nèi)有新的服務(wù)器啟動(dòng)或關(guān)閉時(shí)會(huì)通過(guò)組播技術(shù)向其他主機(jī)發(fā)送注冊(cè)或注銷請(qǐng)求,收到此請(qǐng)求的服務(wù)器會(huì)將其IP地址在本機(jī)的服務(wù)器列表中進(jìn)行添加或移除,這樣就達(dá)到了服務(wù)器注冊(cè)與注銷的功能。
服務(wù)器管理員登錄系統(tǒng)后,均可以在后臺(tái)進(jìn)行共享資源的發(fā)布。管理員只需要將所要共享的資源放在服務(wù)器的resources目錄下,并在后臺(tái)的管理系統(tǒng)中填寫(xiě)資源的相關(guān)信息即可實(shí)現(xiàn)對(duì)發(fā)布信息資源的維護(hù)。
采用dom4j技術(shù)來(lái)實(shí)現(xiàn)對(duì)XML文件的解析處理,大大提高了解析效率和搜索效率。在該系統(tǒng)中,通過(guò)使用dom4j技術(shù)來(lái)操縱XML文件,避免了使用數(shù)據(jù)庫(kù)記錄信息的繁瑣,同時(shí)更便于資源檢索。
各用戶在登錄系統(tǒng)后,均可以在系統(tǒng)主頁(yè)的資源檢索框內(nèi)輸入資源的關(guān)鍵字來(lái)進(jìn)行資源檢索。系統(tǒng)會(huì)根據(jù)輸入的關(guān)鍵字,對(duì)分布在局域網(wǎng)內(nèi)的所有服務(wù)器的共享資源進(jìn)行檢索,得到結(jié)果后返回給用戶。
當(dāng)用戶檢索到自己所需要的資源之后,可以對(duì)資源進(jìn)行預(yù)覽。音頻和視頻格式均可以嵌入到網(wǎng)頁(yè)上查看預(yù)覽效果。預(yù)覽過(guò)后,可以下載當(dāng)前預(yù)覽資源。
系統(tǒng)部署發(fā)布成功后,綜合運(yùn)用了單元測(cè)試、集成測(cè)試和確認(rèn)測(cè)試三種測(cè)試方法對(duì)系統(tǒng)進(jìn)行了測(cè)試,較好地完成了對(duì)本系統(tǒng)的測(cè)試工作,系統(tǒng)測(cè)試過(guò)程和結(jié)果如下。
進(jìn)入搜索系統(tǒng),在搜索框內(nèi)輸入所查詢資源的關(guān)鍵字,點(diǎn)擊搜索按鈕,檢索資源結(jié)果。然后,測(cè)試搜索系統(tǒng)資源預(yù)覽效果,文檔可以嵌入網(wǎng)頁(yè)式預(yù)覽,支持的主要文件格式包括:word、ppt、 pdf。
本文通過(guò)運(yùn)用Struts2.0技術(shù)搭建起系統(tǒng)框架,dom4j解析技術(shù)解析xml資源文件,綜合運(yùn)用Java程序語(yǔ)言、JSP、JavaScript等Web開(kāi)發(fā)技術(shù)實(shí)現(xiàn)了系統(tǒng)功能。系統(tǒng)整體界面友好、層次分明、操作簡(jiǎn)單,各模塊之間的耦合度較低,通過(guò)綜合運(yùn)用單元測(cè)試、集成測(cè)試和確認(rèn)測(cè)試,系統(tǒng)實(shí)現(xiàn)了局域網(wǎng)內(nèi)資源的深度共享與有效檢索,為局域網(wǎng)資源的有效利用和信息整合提供了有效解決方案。
[1]李崢.基于XML的數(shù)字資源檢索[J].數(shù)據(jù)庫(kù)與信息管理,2013(12).
[2]任文娟.基于XML的P2P網(wǎng)絡(luò)資源檢索系統(tǒng)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用.2013.22(01).