- 相關(guān)推薦
圖書(shū)館特色數據庫建設發(fā)布系統設計計算機論文
摘要:
介紹了基于A(yíng)SP.NET技術(shù)開(kāi)發(fā)的圖書(shū)館自建特色數據庫管理系統,該系統前端應用程序采用ASP.NET技術(shù)開(kāi)發(fā),底層數據庫采用目前流行的SQL Server2005。本系統功能完備,可實(shí)現對館藏圖書(shū)、期刊、報紙等紙質(zhì)文獻的數字化管理和信息發(fā)布,具有較強的實(shí)用性。
關(guān)鍵詞:
特色數據庫;ASP.NET;SQL Server;管理系統
中圖分類(lèi)號:
TP393文獻標識碼:A
文章編號:
1673-1980(2011)02-0164-03
圖書(shū)館特色數據庫建設歷來(lái)是圖書(shū)館數字資源建設的重要組成部分,對于具有豐富特色館藏文獻的圖書(shū)館來(lái)說(shuō)尤其如此。因此,許多圖書(shū)館都根據自身條件對這些重要文獻進(jìn)行了數字化,如購買(mǎi)數字化系統,或與數字資源供應商合作。我校圖書(shū)館近幾年進(jìn)行了數字化工作流程設計和數字化系統的開(kāi)發(fā),逐漸建立起了一套具有自有知識產(chǎn)權的特色數據庫建設發(fā)布系統。
ASP.NET是微軟推出的新一代Active ServerPage,是微軟發(fā)展的新的體系結構.NET的一部分,其全新的技術(shù)架構讓編程變得非常容易。與其他WEB程序技術(shù)相比,ASP.NET具有許多新的特點(diǎn):真正的面向對象編程語(yǔ)言,功能強大,簡(jiǎn)潔易學(xué);編譯型編程框架,程序執行速度快;WEB頁(yè)面創(chuàng )建簡(jiǎn)單易行;
ADO.NET處理數據訪(fǎng)問(wèn),使數據訪(fǎng)問(wèn)更加快速可靠等;贏(yíng)SP.NET的這些優(yōu)秀特性,采用ASP.NET進(jìn)系統開(kāi)發(fā)便成了我館的首要選擇。
1特色數據庫建設發(fā)布系統架構
過(guò)去許多此類(lèi)應用系統的開(kāi)發(fā),多采用Client/Server的二層體系結構,并且應用廣泛,在這種結構中應用程序邏輯通常由客戶(hù)端程序實(shí)現,服務(wù)端負責進(jìn)行客戶(hù)端的數據訪(fǎng)問(wèn)和處理請求,并將處理和訪(fǎng)問(wèn)結果返回客戶(hù)端。但是,Client/Server結構存在一些問(wèn)題,當客戶(hù)端數目激增時(shí),服務(wù)器端的性能會(huì )因為負載過(guò)重而大大降低;最重要的是,一旦業(yè)務(wù)邏輯發(fā)生變化,客戶(hù)端和服務(wù)器端的應用程序都需要進(jìn)行修改,給應用維護和升級帶來(lái)極大的不便等等。
因此,目前數據庫應用程序的開(kāi)發(fā)已經(jīng)從傳統的Client/Server結構向三層結構轉變。所謂三層體系結構,即顯示層,業(yè)務(wù)邏輯層和數據層。業(yè)務(wù)邏輯層是在客戶(hù)端與數據庫之間加入了一個(gè)“中間層”,也叫組件層,整個(gè)架構是邏輯上的三層結構而非物理結構,我們即可以將這三層程序邏輯結構放到一個(gè)服務(wù)器上運行,也可以放置到三臺服務(wù)器上。在特色數據庫建設發(fā)布系統中使用的三層架構如圖1所示。
2特色數據庫建設發(fā)布系統功能描述
2.1特色數據庫信息發(fā)布實(shí)現各類(lèi)特色數據庫信息發(fā)布和資源檢索,文獻類(lèi)型包括數字圖書(shū)、數字期刊、數字報紙、圖片、視頻等。
信息發(fā)布包括最新資源、資源分類(lèi)導航和學(xué)科導航、資源排行等,每種資源均有信息瀏覽的詳細頁(yè)面,并提供全文下載服務(wù);資源檢索有簡(jiǎn)單檢索和高級檢索,簡(jiǎn)單檢索是一種快速簡(jiǎn)便的檢索方法,不需要讀者進(jìn)行過(guò)多的條件輸入;高級檢索則提供了多種檢索途徑,如書(shū)名、刊名、作者、關(guān)鍵詞、分類(lèi)等,可以為讀者提供更準確的檢索結果,縮小結果范圍。
2.2特色數據庫建設
這部分功能是特色數據庫建設發(fā)布系統的主要部分,每種類(lèi)型的文獻都設計了相應的數字化流程,根據這些流程,系統設計了相應的功能。以圖書(shū)、期刊和報紙等紙質(zhì)文獻為例,其工作流包含兩部分,即管理工作流和數字化工作流。(1)管理工作流:創(chuàng )建特色數據庫=>建立數字化任務(wù)=>制定數字化清單=>任務(wù)分配=>任務(wù)審核=>資源發(fā)布。(2)數字化工作流:任務(wù)接收=>文獻數字化(包括元數據標引、數字全文管理)=>提交任務(wù)。每個(gè)工作人員的當前任務(wù)完成后,管理員可以對每個(gè)工作人員的工作進(jìn)行審核,如有問(wèn)題,將該任務(wù)重新返回給工作人員進(jìn)行錯誤修正,當任務(wù)合格后,資源才能發(fā)布出去,工作人員才可以進(jìn)行下一個(gè)任務(wù)。
對于圖片、視頻、互聯(lián)網(wǎng)文檔等資源,系統也設計了對應的工作流程,本文就不再贅述。
2.3系統管理
該部分功能包含了系統變量設置、用戶(hù)管理和統計功能。用戶(hù)分屬不同用戶(hù)組,針對每個(gè)用戶(hù)組賦予用戶(hù)權限,如管理員可對特色數據庫進(jìn)行信息維護、任務(wù)分配、用戶(hù)的添加刪除、用戶(hù)權限管理、工作質(zhì)量審核、資源統計、所有工作量統計等;普通用戶(hù)可以進(jìn)行該用戶(hù)任務(wù)的文件上傳、文件刪除、元數據管理等操作,進(jìn)行自身的工作量統計,自身用戶(hù)的信息維護如密碼管理等。
系統功能結構如圖2所示。
3數據庫設計
本館的特色數據庫建設發(fā)布系統采用了SQL2008作底層的數據引擎進(jìn)行數據管理,主要數據表包括:特色數據庫信息表,用于存儲特色庫基本信息;文獻信息表,用于存儲元數據;任務(wù)表,用于存儲管理員制定的任務(wù)列表信息,如任務(wù)內容,任務(wù)進(jìn)度,任務(wù)執行人等;用戶(hù)組表,用于存儲用戶(hù)組信息和權限;用戶(hù)表,用于存儲用戶(hù)信息;系統表,用于存儲系統環(huán)境變量;工作日志表,用于存儲工作日志記錄,便于統計工作量;資源訪(fǎng)問(wèn)記錄表,用于存儲讀者訪(fǎng)問(wèn)特色數據庫信息量,如瀏覽量、下載量等。
4系統功能實(shí)現
系統各功能采用C%語(yǔ)言、HTML語(yǔ)法和面向對象程序設計技術(shù)實(shí)現,所有業(yè)務(wù)邏輯、業(yè)務(wù)對象都抽象為實(shí)體類(lèi),在三層體系結構中,表現層、業(yè)務(wù)邏輯、數據層各施其責,各層通過(guò)接口進(jìn)行通信,互相協(xié)同又相互獨立。
在表現層,系統采用了DIV+CSS的結構布局,便得界面的設計更加靈活,用CSS模擬了許多JAVASCRIPT腳本動(dòng)作,便得系統運行速度更快,兼容性更好。同時(shí),系統設計了多種自定義控件,利用Repeater控件進(jìn)行數據綁定,利用ITEMPLATE模板進(jìn)行數據的格式化顯示,雖然在所有數據控件中,Repeater最簡(jiǎn)單,本身沒(méi)有內置數據格式化功能,但是通過(guò)結合ITEMPLATE模板,通過(guò)編程動(dòng)態(tài)改變其顯示模板和所綁定的數據集,其中數據顯示控制的靈活性則是最強的。
在業(yè)務(wù)邏輯層,將各類(lèi)業(yè)務(wù)操作和業(yè)務(wù)對象進(jìn)行封裝,主要類(lèi)如下:MARC類(lèi)封裝了圖書(shū)期刊等數字文獻的元數據屬性和操作,如書(shū)名、刊名、作者、出版社等字段的存儲和獲取。BusinessFactory類(lèi)封裝了所有業(yè)務(wù)邏輯,如創(chuàng )建特色數據庫、創(chuàng )建數字化任務(wù)列表、任務(wù)分配和審核、元數據的添加刪除、數字全文文檔管理等。
USER類(lèi)封裝了用戶(hù)信息、用戶(hù)權限等。Task類(lèi)封裝了數字化任務(wù)的創(chuàng )建、任務(wù)清單管理、任務(wù)分配、任務(wù)審核等。Stat類(lèi)封裝了所有數據統計功能,如工作日志統計、資源訪(fǎng)問(wèn)統計、數據報表、圖形繪制等。
在數據層,主要利用ADO.NET提供的各類(lèi)數據庫操作,對業(yè)務(wù)數據進(jìn)行操作,在本系統中將這些功能封裝在SQLHelper類(lèi)中,該類(lèi)負責利用ADO.NET的各種特性,實(shí)現所有數據庫表的操作,如記錄的添加刪除、更新,記錄集的獲取等。
以下則是MARC類(lèi)中獲取某個(gè)字段數據的方法源碼:public string getFieldData(string fieldname){int fieldnum=this.getNumOfField(fieldname);
if(fieldnum==0)
{string fields=new string;
fields="";
return fields;
}
else{string fields=new string[fieldnum];
int indexoffields=0;
int lengthoffield=0;
int startaddressoffield=0;
for(int i=0;i
numOfAllFields;i++)
{if(this.ctrlInfOfFields[i].
Substring(0,3)==fieldname)
{lengthoffield=Convert.
ToInt32(this.ctrlInfOfFields[i].Substring(3,4));
startaddressoffield=Convert.
ToInt32(this.ctrlInfOfFields[i].Substring(7,5));
fields[indexoffields++]=
getMychars(this.marcDataArea,lengthoffield,startaddressoffield);
}
}return fields;
}
}
5結語(yǔ)
本文所設計的圖書(shū)館特色數據庫建設發(fā)布系統界面簡(jiǎn)潔,系統功能結構清晰,實(shí)現了本館藏特色圖書(shū)、期刊、報紙等資源的數字化管理和發(fā)布。按照系統所設計的工作流程,可以方便輕松地建設本館特色數字資源庫,對數字資源進(jìn)行進(jìn)一步的充實(shí)和完善。系統的成功開(kāi)發(fā),有助于提升圖書(shū)館自動(dòng)化管理水平和資源服務(wù)水平,提高工作人員的工作效率。
參考文獻
[1]范振鈞.基于A(yíng)SP.NET的三層結構實(shí)現方法研究[J].計算機科學(xué),2007,34(4):289-290.
[2]Bill Evjen,Jay Glynn.C#高級編程(第四版)[M].李敏波譯,北京:清華大學(xué)出版社,2006.
【圖書(shū)館特色數據庫建設發(fā)布系統設計計算機論文】相關(guān)文章:
計算機數據庫設計的論文09-24
高校圖書(shū)館建設地方特色文獻數據庫的再思考08-07
大力開(kāi)發(fā)地方文獻 建設有特色圖書(shū)館論文09-23
裝潢藝術(shù)設計專(zhuān)業(yè)特色建設思路的論文07-12
計算機數據庫論文09-11
計算機數據庫論文07-21
計算機機房管理系統設計論文09-24