林平榮,魯昭,黃煜祺(廣州大學(xué)華軟軟件學(xué)院軟件工程系,廣州 510990)
基于Entity Framework的圖書館光盤管理系統(tǒng)
林平榮,魯昭,黃煜祺
(廣州大學(xué)華軟軟件學(xué)院軟件工程系,廣州510990)
目前廣州大學(xué)華軟軟件學(xué)院(以下簡(jiǎn)稱華軟學(xué)院)的圖書館大約有4萬(wàn)張隨書光盤,并有逐年增長(zhǎng)之勢(shì)。隨書光盤所提供的各種實(shí)用教學(xué)實(shí)例及豐富的配套資源對(duì)圖書的使用具有很大的幫助[1],深受廣大讀者的喜愛。如何管理和使用隨書光盤成為圖書館越來(lái)越突出的問(wèn)題。
針對(duì)光盤資源的管理,各圖書館不盡相同,目前主要有以下三種方法:(1)書盤合藏。該模式最簡(jiǎn)單,但是容易造成光盤丟失以及管理上的困難。(2)書盤分藏。該模式通過(guò)對(duì)光盤單獨(dú)進(jìn)行編目加工,方便部分缺乏校園內(nèi)上網(wǎng)條件的讀者,但隨著光盤數(shù)量及借閱次數(shù)的增加,也容易丟失或是發(fā)生磨損。(3)信息化數(shù)字化管理。該模式是將光盤復(fù)制到圖書館專用服務(wù)器上,然后上傳到校園網(wǎng)上供讀者隨時(shí)隨地下載利用[2]。特點(diǎn)是方便讀者校園內(nèi)自由下載借閱,徹底解決了光盤丟失、磨損問(wèn)題,管理方便。目前應(yīng)用最為廣泛的管理模式為第三種,即信息化數(shù)字化管理模式。華軟學(xué)院的圖書館現(xiàn)在仍采用書盤分藏的模式來(lái)進(jìn)行光盤管理,弊端明顯。因此,采用信息化數(shù)字化管理模式,建立一個(gè)高效的圖書館光盤管理系統(tǒng)顯得十分必要,它可以使圖書館更加有效地管理光盤數(shù)據(jù),實(shí)現(xiàn)資源共享,推動(dòng)圖書館的現(xiàn)代化。
圖書館光盤管理系統(tǒng) (CD Management System,以下簡(jiǎn)稱CMS)的主要目標(biāo)是改善圖書館的日常光盤管理流程,實(shí)現(xiàn)光盤資源的信息化數(shù)字化管理。針對(duì)華軟學(xué)院圖書館在光盤資源管理過(guò)程中所存在的問(wèn)題,總結(jié)出對(duì)系統(tǒng)的功能需求,主要有以下五個(gè)方面:
①實(shí)現(xiàn)對(duì)光盤資源的申請(qǐng)與處理。由于現(xiàn)有隨書光盤數(shù)量龐大,大部分光盤資料大小都在300M以上,如果把全部光盤資料放置于服務(wù)器,會(huì)給服務(wù)器帶來(lái)巨大的壓力。為此,CMS以“按需分配”為原則對(duì)光盤文件進(jìn)行管理,允許讀者以申請(qǐng)的方式來(lái)獲取光盤資源。
②允許管理員用戶錄入隨書光盤的書名、編號(hào)、作者、出版社等信息,實(shí)現(xiàn)光盤信息的增刪查改等功能,提供接口實(shí)現(xiàn)圖書與讀者信息的批量導(dǎo)入。
③針對(duì)不同的用戶配置不同的權(quán)限。匿名用戶只能夠檢索圖書信息;登錄認(rèn)證用戶可以申請(qǐng)、下載光盤資源以及查看下載歷史、資源申請(qǐng)的處理情況等操作;圖書管理員則能夠查看、處理普通用戶的操作記錄和光盤資源的申請(qǐng)信息,并且可以禁止或解禁非法操作用戶等更高的權(quán)限等。
④提供一定的安全機(jī)制。用戶可根據(jù)不同的授權(quán)訪問(wèn)全部或者本人的相關(guān)信息,授權(quán)外的信息將無(wú)法訪問(wèn),從而能防止用戶的無(wú)意或惡意刪改,保證相關(guān)信息的安全性。
⑤具備人性化的圖形用戶界面,操作簡(jiǎn)單,同時(shí)還應(yīng)該有比較好的可擴(kuò)展性,方便以后的二次開發(fā)。
基于以上需求,CMS主要功能模型結(jié)構(gòu)如圖1所示:
圖1 功能模型結(jié)構(gòu)圖
讀者光盤資源申請(qǐng)的具體流程如圖2所示:
圖2 讀者光盤資源申請(qǐng)流程圖
管理員處理光盤申請(qǐng)的流程如圖3所示:
圖3 管理員處理讀者申請(qǐng)流程圖
為了更好地提高檢索性能,CMS將對(duì)SQL Server數(shù)據(jù)庫(kù)中符合要求的記錄集進(jìn)行分頁(yè)查詢。通過(guò)計(jì)算符合的記錄集記錄數(shù)和每頁(yè)顯示的記錄數(shù)計(jì)算出總頁(yè)數(shù),在用戶翻頁(yè)時(shí),自動(dòng)匹配下一頁(yè)的記錄數(shù)。這樣的分頁(yè)查詢只需提取每頁(yè)顯示記錄數(shù)的記錄,從而進(jìn)一步提高檢索信息的速度,降低一次把全部記錄提取出來(lái)的性能消耗,增強(qiáng)讀者使用體驗(yàn)。在CMS的實(shí)現(xiàn)過(guò)程中,將會(huì)使用基于LINQ to Entities技術(shù)來(lái)對(duì)數(shù)據(jù)進(jìn)行分頁(yè),其過(guò)程為[5]:
當(dāng)有過(guò)多用戶進(jìn)行光盤資源的下載操作時(shí),會(huì)對(duì)服務(wù)器的性能造成一定的影響甚至可能崩潰。CMS的光盤資源管理服務(wù)器是基于Serv-U的FTP服務(wù)器,程序通過(guò)該FTP服務(wù)器的ini配置文件,實(shí)現(xiàn)在后臺(tái)對(duì)用戶進(jìn)行限速等管理操作。同時(shí)CMS通過(guò)FTP管理功能統(tǒng)一控制同時(shí)在線用戶數(shù),從而實(shí)現(xiàn)對(duì)管理員上傳資源和讀者下載資源的并發(fā)控制,保證CMS的運(yùn)行效率和用戶的下載體驗(yàn)。
讀者登錄到CMS進(jìn)行相關(guān)操作,需要通過(guò)FormsAuthentication提供靜態(tài)幫助器方法和屬性用來(lái)管理Forms身份驗(yàn)證票的驗(yàn)證,它為每個(gè)登錄的用戶都保存了權(quán)限票證。用戶的操作都要跟進(jìn)它的票證權(quán)限來(lái)進(jìn)行驗(yàn)證。FormsAuthentication的登錄票證驗(yàn)證保存過(guò)程為:
①生成登錄票證
FormsAuthenticationTicket ticket=new FormsAuthenticationTicket(票證版本,票證標(biāo)識(shí),票證登錄時(shí)間,票證過(guò)期時(shí)間,票證不永久保存,票證角色);
②加密票證并保存至用戶Cookie
HttpCookie cookie=new HttpCookie(FormsAuthentication. FormsCookieName,F(xiàn)ormsAuthentication.Encrypt(ticket);
Response.Cookies.Add(cookie);
為了更好的提高工作效率,最大程度化的減少人工輸入數(shù)據(jù)的工作量,CMS支持圖書、讀者信息的基于Excel文件一鍵導(dǎo)入功能。其核心是Excel文檔的打開與關(guān)閉,并把Excel文檔中相關(guān)信息匹配保存到數(shù)據(jù)庫(kù)中。在實(shí)現(xiàn)之前,需要先導(dǎo)入Microsoft.Office.Interop. Excel命名空間。其關(guān)鍵代碼如下[6]:
CMS采用ASP.NET技術(shù)構(gòu)建Web系統(tǒng),以ADO .NET Entity Framework的實(shí)體映射框架實(shí)現(xiàn)數(shù)據(jù)訪問(wèn),使用SQL Server 2008作為后臺(tái)數(shù)據(jù)庫(kù),使用Visual Studio 2010作為代碼開發(fā)工具。系統(tǒng)設(shè)計(jì)采用模塊化的設(shè)計(jì)方式,分為前臺(tái)與后臺(tái),功能如下:
①前臺(tái)
前臺(tái)可以讓用戶進(jìn)行光盤資源的檢索、查看已上傳的光盤資源列表以及所有的光盤資源列表等,并可以登錄查看自己的申請(qǐng)、下載記錄、修改密碼以及系統(tǒng)消息,前臺(tái)界面如圖4所示。
②后臺(tái)
CMS后臺(tái)是圖書管理員或系統(tǒng)管理員對(duì)CMS相關(guān)信息進(jìn)行管理的平臺(tái)。不同權(quán)限的圖書管理員與系統(tǒng)管理員所瀏覽的后臺(tái)界面會(huì)有所不同。管理員可以在后臺(tái)對(duì)系統(tǒng)日志、圖書信息、光盤信息、用戶的資源申請(qǐng)、系統(tǒng)設(shè)置、安全設(shè)置等作統(tǒng)一管理,后臺(tái)界面如圖5所示。
CMS現(xiàn)已投入使用2年多,共處理學(xué)生申請(qǐng)數(shù)量6000余次,光盤資源下載次數(shù)達(dá)到5萬(wàn)多次,運(yùn)行穩(wěn)定、快速、安全,受到師生的廣泛歡迎,達(dá)到了預(yù)期的效果。
CMS的實(shí)現(xiàn)能夠提高圖書館本身管理水平,使得圖書館可以更有效地管理光盤數(shù)據(jù),實(shí)現(xiàn)資源共享。但隨著上傳光盤資源的不斷增多,會(huì)增加服務(wù)器的存儲(chǔ)負(fù)荷和故障風(fēng)險(xiǎn)。同時(shí)在面對(duì)新圖書日益增加的情況下,CMS的性能和數(shù)據(jù)安全性也會(huì)面臨重大考驗(yàn)。而CMS作為華軟學(xué)院圖書館信息平臺(tái)的子系統(tǒng),其信息不能與之同步更新,會(huì)對(duì)CMS相關(guān)數(shù)據(jù)的實(shí)時(shí)性有較大影響。所以,在日后的再開發(fā)與維護(hù)中,應(yīng)加強(qiáng)對(duì)服務(wù)器存儲(chǔ)空間及相關(guān)硬件的建設(shè),并且與圖書館信息平臺(tái)做更多的深度整合,使信息與功能更加完整。
圖4 CMS前臺(tái)界面
圖5 CMS后臺(tái)界面
[1]陳銳.隨書光盤管理方法分析.圖書館學(xué)研究,2005(2):16-17.
[2]丁萍.高校圖書館隨書光盤管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).青海師范大學(xué)學(xué)報(bào),2010(2):103-105.
[3]王占勇,俞濤,王堯.Entity Framework技術(shù)在出差筆記本借用管理系統(tǒng)中的應(yīng)用研究.信息系統(tǒng)工程,2014(9):94-96.
[4]Boehm,Anne.Murach's ADO.NET 3.5,LINQ,and the Entity Framework with C#2008.MURACH MIKE&ASSOC INC,2010:109-110.
[5]Julia Lerman.Programming entity framework:building data centric apps with the ADO.NET entity framework.O'REILLY&ASSOC INC,2010:58-59.
[6]房大偉.ASP.NET開發(fā)實(shí)戰(zhàn)1200例.北京,清華大學(xué)出版社,2011:342-343.
Entity Framework;Library;CD Management System;ASP.NET
Library CD Management System Based on Entity Framework
LIN Ping-rong,HUANG Yu-qi
(Software Engineering,South China Institute of Software Engineering.Guangzhou University,Guangzhou 510990)
1007-1423(2015)24-0056-04
10.3969/j.issn.1007-1423.2015.24.014
林平榮(1981-),男,福建漳州人,碩士,研究方向?yàn)檐浖こ?、機(jī)器學(xué)習(xí)
魯昭(1983-),女,湖北武漢人,本科,助理館員,研究方向?yàn)閳D書館信息化管理
黃煜祺(1990-),男,廣東廣州人,本科,研究方向?yàn)檐浖こ?/p>
2015-06-18
2015-07-31
隨著計(jì)算機(jī)與多媒體技術(shù)的普及和應(yīng)用,圖書出版形式呈現(xiàn)多樣化,隨盤圖書越來(lái)越多,而在高校數(shù)字圖書館的建設(shè)過(guò)程中,數(shù)據(jù)存儲(chǔ)和光盤共享是一個(gè)關(guān)鍵環(huán)節(jié),也是一個(gè)難題。針對(duì)廣州大學(xué)華軟軟件學(xué)院圖書館在光盤管理方面存在的問(wèn)題,結(jié)合實(shí)際情況提出一個(gè)基于Entity Framework的光盤管理系統(tǒng),分析系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)并給出最終實(shí)現(xiàn)的效果。
Entity Framework;圖書館;光盤管理系統(tǒng);ASP.NET
廣州大學(xué)華軟軟件學(xué)院科研項(xiàng)目(No.ky201116)
With the popularization and citation of computer and multimedia technology,the form of book publication is diversified,and more and more books are published.In the process of university digital library construction,data storage and optical disc sharing is a key link,but also a problem.In view of the problems existing in the management of CD South China Institute of Software Engineering.GU Library,combined with the actual situation presents a CD management system based on the Entity Framework,analyses the system to achieve the key technology and gives the final realization of the effect.