徐延華
(河南農業大學圖書館,河南 鄭州 450002)
基于文件檢索的隨書光盤網絡管理系統
徐延華
(河南農業大學圖書館,河南 鄭州 450002)
針對目前隨書光盤網絡管理系統的不足,設計開發了能夠對光盤文件進行檢索的管理系統,簡介系統的體系結構和功能模塊,以及如何用遞歸函數實現對光盤文件的檢索。
隨書光盤;光盤管理;管理信息;網絡瀏覽;數據庫
隨著計算機技術和信息技術的發展,信息載體正逐步多媒體化,附有光盤的圖書越來越多,學科覆蓋面也越來越廣[1]。因為光盤特有的質地屬性,使其在外借或在計算機上多次使用時容易磨損、損壞、劃傷、丟失,甚至影響到光盤所對應圖書的使用[2],所以,使用隨書光盤網絡管理系統對隨書光盤進行管理,將隨書光盤拷貝到圖書館的存儲設備上(如磁盤陣列、SAN、NAS),然后在校園網上發布,通過網絡供全校讀者在線檢索、瀏覽和下載使用,解決傳統管理方式下的光盤損壞、丟失等缺陷[3],已成為各大高校圖書館的共識。筆者對目前部分高校圖書館使用的隨書光盤網絡管理系統進行了調查,高校圖書館使用的隨書光盤網絡管系統主要有杭州麥達和北京暢想之星,但這些管理系統只對讀者提供光盤目錄信息數據庫的查詢,查詢到相應信息后,下載整張光盤的鏡像文件,這種方式不夠靈活方便,對于那些只想檢索使用光盤中某個或某種特定文件的讀者,那些不需要的文件也要打包下載,一定程度上浪費了讀者的時間。由此,設計開發了能夠檢索、下載光盤內特定文件的隨書光盤網絡管理系統。
系統采用B/S(Brower/Server,瀏覽器/服務器)結構,B/S是以HTTP為傳輸協議,客戶端通過瀏覽器(Browser)訪問Web服務器以及與之相連的后臺數據庫的體系結構。
B/S結構是WEB興起后的一種網絡結構模式,WEB瀏覽器是客戶端最主要的應用軟件。這種模式統一了客戶端,將系統功能實現的核心部分集中到服務器上,簡化了系統的開發、維護和使用。其一,采用B/S結構,基于ASP.NET的隨書光盤管理系統的三層結構,分別為:用戶層、業務層和數據層。其二,用戶層。用戶層作為前端,負責與用戶交流,作用是向用戶展示請求的結果以及接受用戶輸入的數據和命令。它包ASP.NET頁面和Web瀏覽器,瀏覽器可以采用時下流行的IE(Internet Explorer)或NETSCAPE。本系統建議你使用IE6.0或以上的版本,兼容性好。其三,業務層。業務層是用戶層與數據層之間的橋梁,負責接收瀏覽器傳來的請求并將請求傳給數據層,同時將請求處理結果返送給瀏覽器。系統幾乎所有的工作都集中在業務層,它是三層結構的核心,也是開發的重點。它由Web表單(ASP.NET的服務器控件)、XML Web服務和組件服務組成。其中Web表單是ASP.NET應用程序的核心所在,它是向客戶呈現數據和信息的基礎,也是響應和處理客戶與顯示的Web表單交互生成的信息和數據的基礎。其四,數據層。數據層通過ADO.NET訪問SQL SERVER 2000數據庫,操縱數據為業務層提供數據服務,如存儲數據、返回操作結果和數據檢索結果等[4]。
2.1 系統功能流程圖。隨書光盤網絡管理系統的系統總工可分為四個模塊:系統管理、數據加工、隨書光盤書目信息檢索、隨書光盤文件內容檢索,如圖1所示。

圖 1 系統功能流程圖
2.2 系統模塊及功能
2.2.1 系統管理。系統管理是對加工人員和隨書光盤書目信息數據庫的管理。加工人員的管理主要有:賬號的建立、刪除,密碼的修改,權限的設置等;隨書光盤書目信息數據庫的管理主要是隨書光盤書目信息的導入和備份。本館的業務自動化管理系統采用的是深圳圖書館開發的ILASII,可以直接從業務自動化管理系統的書目庫將有隨書光盤的書目信息以MARC數據的格式導出為定長文本,然后再將定長文本導入SQL SERVER 2000數據庫相應的數據表中,這樣就大大節省了回溯建庫的時間;數據的備份則是利用SQL SERVER 2000數據庫提供的數據庫維護計劃功能,實現每天定時的自動備份[5]。
2.2.2 數據加工。數據加工包括兩個方面:書目信息數據庫的加工、光盤內容文件的加工。書目信息數據庫的加工是指隨書光盤書目信息入庫、修改、刪除等。光盤文件內容的加工是將整張光盤的文件和光盤鏡像,以FTP的方式上傳到Web服務器相應的目錄中,供讀者下載使用。
2.2.3 信息檢索。信息檢索基于隨書光盤書目信息數據庫,為用戶提供多途徑的檢索方式,包括題名、作者、出版社、分類號、索取號,并支持二次檢索。讀者檢索到符合條件的光盤后可以下載整個光盤的鏡像文件到本地計算機,然后利用虛擬光驅軟件將光盤鏡像映射為本地的光盤,瀏覽使用;或者以FTP方式瀏覽光盤目錄,根據自己的需要下載光盤中的單個或多個文件或文件夾。
2.2.4 文件檢索。文件檢索是基于隨書光盤內所含的文件,它通過隨書光盤所包含的文件的名稱、類型和純文本文件的內容進行檢索。讀者在不知道隨書光盤書目信息的情況下,可以根據自己的需要直接對光盤文件目錄進行檢索,檢索到符合要求的文件后,直接以FTP方式下載文件或者文件所在的文件夾,方便靈活。
3.1 系統對文件檢索的實現方法
對光盤文件檢索是利用遞歸函數實現的。遞歸是函數自己調用自己本身,或者在自己函數調用的下級函數中調用自己。在使用遞歸函數時要確保有一個終止條件來結束遞歸過程,否則程序會一直循環調用下去,永不終止[6]。系統具體實現方法如圖2所示。

圖 2 遞歸函數流程圖
系統定義了一個遞歸函數ShowFile(),函數首先獲取存放光盤的文件夾中所有對象的屬性,依次判斷每個對象是文件夾還是文件。如果對象是文件夾,則再次對這個被判斷的文件夾調用ShowFile()函數,獲取該文件夾內所有對象的屬性,繼續判斷,依次類推,直到遍歷全部的文件夾;如果對象是文件則不再調用ShowFile()函數,直接判斷該文件的名稱、類型、內容是否匹配檢索要求,如果匹配則反饋文件的大小、名稱、類型等相關信息給用戶層瀏覽器供讀者瀏覽、下載。這里對文件屬性的判斷就是遞歸函數的終止條件,判斷結果是文件夾,則調用遞歸,如果是文件,則終止。
3.2 系統特點
系統實現了對光盤中文件的檢索,讀者可以根據文件名、文件擴展名、文件夾名或者純文本文件內所含字符內容檢索出自己需要的文件或者文件夾,直接進行瀏覽下載,方便了讀者,更加人性化;讀者檢索到相關的信息,只需下載需要的文件,不用打包下載整個光盤的鏡像,節省了讀者的時間;讀者可以一次檢索出多張光盤中所需的文件,下載使用,更加靈活。
隨書光盤網絡管理系統的設計開發,借鑒了許多高校圖書館的管理經驗,并結合了河南農業大學圖書館的實際情況,實現了隨書光盤管理的自動化,提高了隨書光盤的利用率,實現了隨書光盤數據和信息的高度共享,解決了圖書館隨書光盤的管理和利用的難題。系統突破了傳統的隨書光盤管理系統的局限性,實現了對光盤文件的檢索,更加人性化,方便了讀者使用。但由于對文件的檢索對服務器資源占用率高,目前承載系統運行的服務器是2003年購置的,硬件老化而且配置低,當上傳的光盤數據量達到1T的時候(約2 000張光盤左右),對文件的檢索用時較長,近5秒鐘。如果將所有的4 000多張隨書光盤全部上傳,數據量將會達到近2個T以上,檢索用時會更長。這就需要購買更先進、配置更高的服務器,提高服務器的性能;改進編程語言代碼,使用效率更高的搜索方法;將隨書光盤進行更細致的分類,縮小搜索范圍,降低檢索用時,使系統實用性更強,切實解決隨書光盤管理使用中存在的問題。
[1]許方英.隨書光盤與書目信息一體化網絡管理[J].上海高校圖書情報工作研究,2004(2):43-46.
[2]鞏林立.自建一種基于Web的高校圖書館隨書光盤管理系統[J].情報技,2004(6):20-21.
[3]孫潔,陳飛,項海建.高校隨書光盤網絡化管理系統的比較[J].科技情報開發與經濟,2007(6):87-88.
[4]韓立華,張志英,王書海.ASP·NET三層架構在科技獎勵評審系統中的應用[J].電子科技,2010(7):13-14.
[5]王利.西南交通大學圖書館隨書光盤資源建設的實踐[J].四川圖書館學報,2004,(3):69-71.
[6]王慧嬌.程序設計中遞歸函數教學問題探究[J].計算機教,2010,(16):59-62.
TP393
A
1671-0037(2014)09-48-2
徐延華(1977-),男,碩士,工程師,研究方向:數字圖書館,移動圖書館。