李 猛 甘新玲 李 永
(濱州學(xué)院計算機(jī)科學(xué)技術(shù)系,山東 濱州 256603)
通過分析得出本系統(tǒng)主要設(shè)計目標(biāo)包括以下六個方面:
(1)系統(tǒng)最終實現(xiàn)多種形式的資源檢索,包括文檔、音頻、視頻以及圖片。
(2)具備高級檢索功能,其中包括按所需詞查詢,按排除詞查詢,多詞聯(lián)合查詢。
(3)對于用戶輸入的關(guān)鍵詞具備拼音-漢字識別轉(zhuǎn)換功能,例如輸入“pingguo”,則搜索結(jié)果會按照“蘋果”一詞進(jìn)行檢索并顯示與之相關(guān)的資源。
(4)支持文檔預(yù)覽和流媒體播放功能。用戶可以在線瀏覽文檔、播放視頻。
(5)后臺管理功能。后臺管理包括用戶管理、服務(wù)器管理、資源管理模塊。
(6)各服務(wù)器上的用戶可以對自己提供的資源進(jìn)行一些基本信息的維護(hù),主要包括資源刪除與修改。
局域網(wǎng)內(nèi)有多臺服務(wù)器,各服務(wù)器之間通過RMI技術(shù)進(jìn)行通信。本系統(tǒng)突破了傳統(tǒng)的“主從服務(wù)器”的設(shè)計,采用了“平等服務(wù)器”的設(shè)計概念。即局域網(wǎng)內(nèi)的所有主機(jī)均為服務(wù)器,并且每臺服務(wù)器均運行維護(hù)一個服務(wù)器列表。當(dāng)有新的服務(wù)器開啟或關(guān)閉時,其他服務(wù)器會收到相應(yīng)的注冊或注銷的指令,以此來維護(hù)服務(wù)器列表。每臺服務(wù)器上的資源被索引到Web容器根目錄下的test.xml文件中,本系統(tǒng)通過解析XML文件以獲得資源的具體信息。XML解析模塊通過采用dom4j技術(shù)來實現(xiàn)XML文件的處理,極大提高了搜索的效率。當(dāng)?shù)谝淮芜\行環(huán)境時,系統(tǒng)自動檢測是否建立全文索引,如果沒有系統(tǒng)將自動在后臺開辟線程,建立全文索引。全文索引支 持 doc、xls、ppt、docx、xlsx、pptx、txt、wps、dps、rtf、pdf、zip、rar共十三種文件格式的全文索引。
圖1 啟動功能模塊結(jié)構(gòu)圖
系統(tǒng)結(jié)構(gòu)化設(shè)計的核心是把模塊分解設(shè)計,采用自頂向下、逐層分解的方法,整個系統(tǒng)劃分成多個子模塊,分別完成不同的功能,各模塊具有一定的獨立性,降低系統(tǒng)的復(fù)雜性和耦合性。本系統(tǒng)分為啟動功能模塊和資源預(yù)覽功能模塊,結(jié)構(gòu)圖分別如圖1所示。
針對資源特征以及本系統(tǒng)的搜索與共享特性,結(jié)合局域網(wǎng)內(nèi)服務(wù)器的IP屬性,在XML文件中設(shè)立了以下表述字段。
表1 資源表述屬性字段
服務(wù)器的注冊/注銷模塊用以解決局域網(wǎng)內(nèi)的各個服務(wù)器之間的識別問題,使各服務(wù)器進(jìn)行維護(hù)本機(jī)的服務(wù)器列表。每臺服務(wù)器運行用于通信的Socket程序,當(dāng)局域網(wǎng)內(nèi)有新的服務(wù)器啟動或關(guān)閉時會通過組播技術(shù)向其他主機(jī)發(fā)送注冊或注銷請求,收到此請求的服務(wù)器會將其IP地址在本機(jī)的服務(wù)器列表中進(jìn)行添加或移除,這樣就達(dá)到了服務(wù)器注冊與注銷的功能。
服務(wù)器管理員登錄系統(tǒng)后,均可以在后臺進(jìn)行共享資源的發(fā)布。管理員只需要將所要共享的資源放在服務(wù)器的resources目錄下,并在后臺的管理系統(tǒng)中填寫資源的相關(guān)信息即可實現(xiàn)對發(fā)布信息資源的維護(hù)。
采用dom4j技術(shù)來實現(xiàn)對XML文件的解析處理,大大提高了解析效率和搜索效率。在該系統(tǒng)中,通過使用dom4j技術(shù)來操縱XML文件,避免了使用數(shù)據(jù)庫記錄信息的繁瑣,同時更便于資源檢索。
各用戶在登錄系統(tǒng)后,均可以在系統(tǒng)主頁的資源檢索框內(nèi)輸入資源的關(guān)鍵字來進(jìn)行資源檢索。系統(tǒng)會根據(jù)輸入的關(guān)鍵字,對分布在局域網(wǎng)內(nèi)的所有服務(wù)器的共享資源進(jìn)行檢索,得到結(jié)果后返回給用戶。
當(dāng)用戶檢索到自己所需要的資源之后,可以對資源進(jìn)行預(yù)覽。音頻和視頻格式均可以嵌入到網(wǎng)頁上查看預(yù)覽效果。預(yù)覽過后,可以下載當(dāng)前預(yù)覽資源。
系統(tǒng)部署發(fā)布成功后,綜合運用了單元測試、集成測試和確認(rèn)測試三種測試方法對系統(tǒng)進(jìn)行了測試,較好地完成了對本系統(tǒng)的測試工作,系統(tǒng)測試過程和結(jié)果如下。
進(jìn)入搜索系統(tǒng),在搜索框內(nèi)輸入所查詢資源的關(guān)鍵字,點擊搜索按鈕,檢索資源結(jié)果。然后,測試搜索系統(tǒng)資源預(yù)覽效果,文檔可以嵌入網(wǎng)頁式預(yù)覽,支持的主要文件格式包括:word、ppt、 pdf。
本文通過運用Struts2.0技術(shù)搭建起系統(tǒng)框架,dom4j解析技術(shù)解析xml資源文件,綜合運用Java程序語言、JSP、JavaScript等Web開發(fā)技術(shù)實現(xiàn)了系統(tǒng)功能。系統(tǒng)整體界面友好、層次分明、操作簡單,各模塊之間的耦合度較低,通過綜合運用單元測試、集成測試和確認(rèn)測試,系統(tǒng)實現(xiàn)了局域網(wǎng)內(nèi)資源的深度共享與有效檢索,為局域網(wǎng)資源的有效利用和信息整合提供了有效解決方案。
[1]李崢.基于XML的數(shù)字資源檢索[J].數(shù)據(jù)庫與信息管理,2013(12).
[2]任文娟.基于XML的P2P網(wǎng)絡(luò)資源檢索系統(tǒng)[J].計算機(jī)系統(tǒng)應(yīng)用.2013.22(01).