學校圖書管理系統的開發

摘要:圖書管理系統是智能辦公系統(IOA)的重要組成部分,因此,圖書管理系統也以方便、快捷的優點正慢慢地進入人們的生活,將傳統的圖書管理方式徹底的解脫出來,提高效率,減輕工作人員以往繁忙的工作,減小出錯的概率,使讀者可以花更多的時間在選擇書和看書上。從而使人們有更多時間來獲取信息、了解信息、掌握信息。其開發主要包括后臺數據庫的建立和維護以及前端應用程序的開發兩個方面。采用SQL Server2005數據庫作為后臺數據庫、Visual C#編程語言作為前臺開發工具,通過對數據庫技術進行了較深入的學習和應用,主要完成書目檢索、讀者管理、借閱管理、圖書管理、用戶維護、系統維護等系統功能。系統運行結果證明,本文所設計的圖書管理系統可以滿足學生和教師借閱者、圖書管理員兩方面的需要,達到了設計要求。

 關鍵詞:圖書管理;系統設計;信息;ASP.NET;SQLServer2005

 1引言

隨著計算機及網絡技術的飛速發展,Internet/Intranet應用在全球范圍內日益普及,當今社會正快速向信息化社會前進,信息系統的作用也越來越大。圖書館在正常運營中總是面對大量的讀者信息,書籍信息以及由兩者相互作用產生的借書信息,還書信息。因此圖書管理信息化是發展的必然趨勢。用結構化系統分析與設計的方法,建立一套有效的圖書信息管理系統,可以減輕工作,將工作科學化、規范化,提高了圖書館信息管理的工作質量因此根據圖書館目前實際的管理情況開發一套圖書管理系統是十分必要的。

 1.1圖書管理的現狀

一直以來人們使用傳統的人工方式管理圖書館的日常工作,對于圖書館的借書和還書過程,想必大家都已很熟悉。在計算機尚未在圖書管理系統廣泛使用之前,借書和還書過程主要依靠手工。一個最典型的手工處理還書過程就是:讀者將要借的書和借閱證交給工作人員,工作人員將每本書上附帶的描述書的信息的卡片和讀者的借閱證放在一個小格欄里,并在借閱證和每本書貼的借閱條上填寫借閱信息。這樣借書過程就完成了。還書時,讀者將要還的書交給工作人員,工作人員根據圖書信息找到相應的書卡和借閱證,并填好相應的還書信息,這樣還書過程就完成了。隨著近年來信息技術及計算機網絡技術的不斷發展,圖書館也先從傳統的圖書館發展到自動化圖書館,再發展到今天的數字圖書館,這些變化使得圖書館的形象越來越現代化,人們查找資料也更加方便。對于一些小圖書館和一些圖書室來說,由于工作人員比較少,長期以來,作為圖書館的主要工作—圖書借閱一直未能很好地開展。在平常的圖書借閱工作中,由于大部分讀者不熟悉圖書館藏書,且對圖書排架分類的不了解,往往花費很長時間才能找到其所需的書。為提高管理效率,更好地為讀者服務,利用已有的辦公局域網絡條件,將館藏書籍做成基于WEB的查詢系統,實現圖書在一個單位的網絡內甚至Internet上查詢,可使圖書查詢和借閱變得更加方便快捷,從而使圖書室的工作效率得到明顯提高。

傳統的圖書管理模式其最大的特點是手工;首先要把買來的圖書資料登記到資料本上,再給每本書分類貼上標簽及制作和標簽相對應的圖書分類卡片,最后把圖書分類卡片按類別分別放置在文件柜里。對于有學生(教師)證的學生(教師)來說還要對他們資料作一定的記錄。并且在人們來借書的時候,首先持證件者要去存放圖書分類卡片的文件柜里查找想借的書是否在架,如果卡片存在,再按照圖書分類卡片在相應的書架上找到需要的圖書,然后登記持證件者的借還書時間和在書簽條上寫下借還XX錄,之后把借書證留在那里;還書的時候,相對應的消去出借記錄;這樣做起來比較麻煩,比較費時間。傳統圖書管理的特點是一直以來,中小型書店、中小學的小型圖書館及各高校圖書館和資料室使用傳統的人工方式管理圖書檔案、會員檔案。這種管理方式存在著諸多缺點,如:手續繁瑣、工作量大、效率低下、出錯率高等,同時給對大量資料的查詢、更新及維護都帶來不少困難。

1.2現有圖書管理系統的概述

在試用了一些個圖書管理系統和查閱了大量相關資料文獻的基礎上,發現那些系統在幾個方面已經不符合時代的要求,由于設計人員及其所用的工具的不同,有Visual Basic6.0、Visual ForPro6.0、Power Builder等,再加上這些圖書管理系統設計的時間也不一樣,所用具體場合也有區別,因此在功能上除了圖書資料管理所需的基本功能之外也有所不同。經過比較總結他們都實現了以下圖書管理的基本功能:1、圖書檢索模塊:是圖書管理系統的重要模塊之一,是讀者快速查詢圖書的途徑。2、圖書管理模塊:是圖書管理員操作模塊,讀者是無權進入的。本模塊由借出圖書登記、歸還圖書登記和續借圖書登記子模塊構成。3、數據維護模塊:是由圖書管理員控制的模塊,它由增加、修改和刪除讀者,增加、修改刪除圖書,瀏覽修改讀者、瀏覽修改圖書等程序組成。這些系統解決了以前的那種管理方式所存在著的諸如手續繁瑣、工作量大、效率低下、出錯率高等缺點,設計出的系統能使讀者快速檢索到自己喜愛的書,圖書管理員能減輕工作量。

1.3選題的目的、意義

隨著社會的進步,信息技術的廣泛應用,數字化管理的優勢日趨顯著。針對中小型圖書館或圖書室管理落后的情況,設計實現一個圖書信息管理系統,通過與計算機的結合使用對中小型圖書館或圖書室的各種圖書信息進行管理可以給管理員和用戶帶來以下不同的方便:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優點能夠極大地提高工作效率,也是圖書館等部門管理科學化、正規化的重要標志之一。而且計算機管理的成本不斷降低。因此,開發一套這樣的中小型圖書管理軟件已經很有必要,并且實現研究服務于實踐的原則。

 1.4圖書管理系統的可行性分析

本次畢業設計題目:“學校圖書管理系統的開發”主要目的是利用數據庫軟件編制一個管理軟件,用以實現圖書、讀者以及日常工作等多項管理。同時對整個系統的分析、設計過程給出一個完整論證。圖書管理系統是一種基于集中統一規劃的數據庫數據管理新模式。在對圖書、讀者的管理,其實是對圖書、讀者數據的管理。本系統的建成無疑會為管理者對圖書管理系統提供極大的幫助。本系統的設計主要從以下幾方面做起:系統業務流程分析、系統的功能設計、系統的數據庫結構設計等。作這些工作需對數據庫知識有足夠認識,并深入的了解Visual C#的使用和管理系統的相關知識。在信息時代的今天,人類需要對在政治、經濟、軍事、文化、科研、教育等領域產生的大量信息進行管理,并對數據進行加工處理,數據庫技術則是信息管理與數據處理的先進技術。隨著信息量的不斷增加,作為計算機的三大主要應用(科學計算、過程控制和數據處理)之一的數據處理,已迅速上升為計算機應用的主要方面,數據庫技術則成為人們日常生活中處理數據不可缺少的有力工具,并且現代的信息管理系統幾乎都以數據庫技術作為核心。

現在大多數的圖書管理方式為手工處理,重復勞動多,勞動強度大,而且容易出錯,新系統的使用能否可以很好的解決這些問題要看系統的可行性,可行性研究的目的是用最小的代價在盡可能短的時間內確定問題是否能夠解決。系統的可行性分析有以下幾個方面:

(1)技術可行性:處理速度快、準確通過權限的設置,數據的安全性好、方便查詢、借閱管理等。

(2)經濟可行性:系統建設不需要很大的投入、可縮減人力投入。

(3)運行上可行性:本系統作為一個小型的圖書館信息管理系統,所耗費的

資源非常的小。

(4)從各種社會因素可行性分析:可降低工作人員工作強度,提高效率,會

得到學校工作人員的一致同意的。

綜上所述通過可行性分析認為新系統的開發方案切實可行,可進行開發。

 1.5系統開發運行環境

系統開發環境:Microsoft Visual Studio 2005

系統開發語言:ASP.net+C#

運行平臺:Windows XP

數據庫:SQL Server 2005

Web服務器:IIS5.1

 2圖書管理系統開發相關技術的介紹

  2.1 Asp.net的介紹

  2.1.1 Asp.net的優勢介紹

ASP.Net可完全利用.Net架構的強大,安全,高效的平臺特性。ASP.Net是運行在服務器后端編譯后的普通語言運行時代碼,運行時早綁定(EarlyBinding),即時編譯,本地優化,緩存服務,零安裝配置,基于運行時代碼受管與驗證的安全機制等都為ASP.Net帶來卓越的性能。對XML,SOAP,WSDL等Internet標準的強健支持為Asp.net在異構網絡里提供了強大的擴展性。ASP.NET是一個已編譯的、基于.NET的環境,可以用任何與.NET兼容的語言創作應用程序。另外,任何ASP.NET應用程序都可以使用整個.NET框架。開發人員可以方便地獲得這些技術的優點,其中包括托管的公共語言運行庫環境、類型安全、繼承等等。在創建ASP.NET應用程序、Web窗體和Web服務時,開發人員可以選擇下列兩個功能,或者以他們認為合適的任何方式將它們結合起來使用。每個功能都能得到同一結構的支持,使您能夠使用身份驗證方案,緩存經常使用的數據,或者對應用程序的配置進行自定義,這里只是列出幾種可能性而已?!癢eb窗體”用于生成功能強大的基于窗體的Web頁。生成這些頁時,可以使用ASP.NET服務器控件來創建公共UI元素,以及對它們進行編程以用于執行常見的任務。這些控件使您能夠用可重復使用的內置或自定義組件生成Web窗體,從而簡化頁面的代碼。有關更多信息,請參閱Web窗體頁。有關如何開發ASP.NET服務器控件的信息,請參閱開發ASP.NET服務器控件。XML Web services提供了遠程訪問服務器功能的途徑。通過使用Web服務,企業可以公開其數據或業務邏輯的編程接口,然后客戶端和服務器應用程序就可以獲得和操作這些編程接口。這些模型中的每一個模型都可以充分利用所有ASP.NET功能,以及.NET框架和.NET框架公共語言運行庫的強大功能。

 2.1.2 Asp.net的特點

ASP.net是基于通用語言的編譯運行的程序,所以它的強大性和適應性,可以使它運行在Web應用軟件開發者的幾乎全部的平臺上。通用語言的基本庫,消息機制,數據接口的處理都能無縫的整合到ASP.net的Web應用中。ASP.net同時也是language-independent語言獨立化的,所以,你可以選擇一種最適合你的語言來編寫你的程序,或者把你的程序用很多種語言來寫,現在已經支持的有C#(C++和Java的結合體),VB,Jscript。將來,這樣的多種程序語言協同工作的能力保護您現在的基于COM+開發的程序,能夠完整的移植向ASP.net。

 2.2 SQL Server 2005概述

SQL Server是一個關系數據庫管理系統它是由Microsoft推出的。SQL Server是一個具備完全Web支持的數據庫產品,提供了對可擴展標記語言(XML)的核心支持以及在Internet上和防火墻外進行查詢的能力,提供了以Web標準為基礎的擴展數據庫編程功能。豐富的XML和Internet標準支持允許使用內置的存儲過程以XML格式輕松存儲和檢索數據。

SQL Server提供強大的開發工具和各類開發特性,在大大提高開發效率的同時,進一步拓展應用空間,帶來新的商業應用機遇。例如,XML數據庫與Web Service的支持將使您的應用實現Internet數據互聯,.net集成極大的擴展了開發空間,異構數據集成、Service Broker使您的數據和其它應用無縫集成,各種新數據類型和T-SQL擴展帶來了諸多靈活性。C#、VB.net、XQuery、XMLA、ADO.net 2.0、SMO、AMO等都將成為SQL Server數據平臺上開發數據相關應用的有力工具。它具有以下特點:

(1)上手容易

大多數的中小企業日常的數據應用是建立在Windows平臺上的。由于SQL Server與Windows界面風格完全一致,且有許多”向導(Wizard)”幫助,因此易于安裝和學習,有關SQL Server的資料、培訓隨處可得,并且目前國內具有MCDBA認證的工程師不在少數

(2)兼容性良好

由于今天Windows操作系統占領著主導地的位,選擇SQL Server一定會在兼容性方面取得一些優勢。另外,SQL Server 2005除了具有擴展性,可靠性以外,還具有可以迅速開發新的因特網系統的功能。尤其是它可以直接存貯XML數據,可以將搜索結果以XML格式輸出等特點,有利于構建了異構系統的互操作性,奠定了面向互聯網的企業應用和服務的基石。這些特點在.NET戰略中發揮著重要的作用。

(3)電子商務

在使用由Microsoft SQL Server 2005關系數據庫引擎的情況下,XML數據可在關系表中進行存儲,而查詢則能以XML格式將有關結果返回。此外,XML支持還簡化了后端系統集成,并實現了跨防火墻的無縫數據傳輸。你還可以使用Hypertext Transfer Protocol(超文本傳輸協議,HTTP)來訪問SQL Server 2005,以實現面向SQL Server 2005數據庫的安全Web連接和無須額外編程的聯機分析處理(OLAP)多維數據集。

(4)數據倉庫

Microsoft SQL Server 2005非常明顯的改進就是增加了OLAP(聯機分析處理)功能,這可以讓很多中小企業用戶也可以使用數據倉庫的一些特性進行分析。OLAP可以通過多維存儲技術對大型、復雜數據集執行快速、高級的分析工作。數據挖掘功能能夠揭示出隱藏在大量數據中的傾向及趨勢,它允許組織或機構最大限度的從數據中獲取價值。通過對現有數據進行有效分析,這一功能可以對未來的趨勢進行預測。

 2.3 Web技術

  2.3.1瀏覽器/服務器(Browser/Server)結構

隨著Web和Internet計算環境的發展,將使企業能夠以更快的速度、更低的費用去創建和布置企業的應用系統,因而,普遍認為C/S架構將會被B/S結構取代。Internet為數據庫應用系統提供了新的機會,采用B/S結構,客戶機上只要安裝一個瀏覽器(Browser),如Netscape Navigator或Internet Explores;中間層采用Web服務器,它接受客戶端的請求,將其轉換為SQL語句,通過ODBC或其他手段傳給數據庫服務器,并將數據庫服務器返回的結果用HTML文件格式傳回給客戶機??蛻魴C的要求大大降低,大部分程序在服務器端執行。采用3層體系結構的Web應用程序由Web瀏覽器、Web服務器和數據庫3部分組成,如圖2-1所示。Web瀏覽器與Web服務器之間的通信仍然遵循HTTP,Web服務器與數據庫之間的通信遵守CGI(Common Gateway Interface)或者Server API規范。在采用三層體系結構的Web應用程序中,Web瀏覽器向Web服務器請求某個HTML文檔或者請求執行某個CGI腳本程序。Web服務器根據Web瀏覽器請求的是某個CGI程序或者API程序,Web服務器則執行(或調用外部程序執行)該程序,然后將程序執行結果返回給Web瀏覽器。習慣上,我們把采用這種體系結構的Web網站稱作“動態網站”。目前,互聯網中絕大部分網站和大多數Web應用系統都采用了這種體系結構。

  2.3.2 IIS服務器技術

IIS(Internet Information Server Internet信息服務器)是Microsoft公司開發的一種集Web,FTP和Gopher服務于一身的服務器,它可以利用Windows XP Server的各種功能并且能在Internet上發布信息。IIS是微軟隨著WindowsXP Server附帶的一個軟件。IIS提供Internet信息服務器應用程序接口(ISAPI)擴展Web服務器的功能,并可通過ASP.NET實現Web程序的快速開發,ASP.NET支持服務器端的JavaScript,VBScript,Microsoft Java和ActiveX Server Component,還支持用VB編寫的CGI程序,甚至用VB開發的C/S架構的程序不經過修改就可以在Web上發布,可以使開發動態主頁更加方便,同時也保護了以前的投資。IIS還包括了Microsoft Index Server,可實現對本Web站點內容的全文檢索以及Site Server Express用于分析站點訪問的情況。IIS的管理功能是基于WindowsXP Server的,可充分利用WindowsXP Server提供的安全服務和目錄服務。它的安全模型是以NTFS安全機制為基礎的,這樣利用資源管理器可以容易地管理使用IIS建立的Web站點的安全性。

3系統總體設計分析

  3.1系統需求分析

隨著互聯網的爆炸性發展,人們越來越習慣于利用網絡來實現所需的服務,網絡已深深影響到人們生活的各個方面。另外,傳統的圖書館不能滿足一部分現代人的需要,而電子閱覽室,由于其不受時間與空間的限制同時又具有傳統圖書館的大部分功能,能夠滿足各類用戶的常規與特殊需求,而且其方便快捷,實現技術又比較成熟,因此受到當代人的喜愛。

該系統主要分為兩部分:讀者部分和管理員部分。為了方便讀者查找自己感興趣的主題進行閱讀,要將圖書按照內容進行分類。讀者可以按照類別進行查找,逐級瀏覽、可以查看自己的信息。本系統還可對用戶的賬號和書目的閱讀權限進行管理。管理員需要給用戶分配用戶名和密碼,及設定用戶的級別,還為用戶提供圖書的排行榜讓用戶能知道那些圖書受到大家的歡迎。

3.2系統實現的目標

學校圖書管理系統的開發主要要實現的目標有以下幾個方面:

(1)界面設計友好、美觀。

(2)數據存儲安全、可靠。

(3)信息分類清晰、準確。

(4)強大的查詢功能,保證數據查詢的靈活性。

(5)實現對圖書借閱和歸還過程的全程數據信息跟蹤。

(6)提供圖書借閱排行榜,為圖書管理員提供了真實的數據信息。

(7)提供靈活、方便的權限設置功能,使整個系統的管理分工明確。

(8)具有易維護性和易操作性。

 3.3系統功能模塊設計

(1)系統設置模塊:添加刪除管理員、設置管理員的權限、說明圖書存放書架信息添加刪除書架信息。

(2)讀者管理模塊:添加刪除不同類型的讀者及注明可借圖書的數量、添加刪除讀者的檔案。

(3)圖書管理模塊:添加刪除不同類型的的圖書及注明圖書可借的天數庫存數量、添加刪除圖書的檔案。

(4)圖書借還模塊:可查詢讀者借閱和歸還圖書的信息及圖書的現有庫存量。

(5)系統查詢模塊:可根據不同的條件(條形碼、書名、類別、作者、書架、出版社)查詢讀者需要的圖書、讀者可根據不同的條件(圖書條形碼、圖書名稱、讀者編號、讀者名字、到期時間)查詢自己借閱圖書信息。

(6)排行榜模塊:可以讓讀者知道圖書借閱的排行榜及讀者借閱的排行榜。

 3.4系統功能結構圖

根據圖書管理系統的實際需求,可以將圖書管理系統劃分為系統設置、圖書管理、讀者管理、圖書借還、系統查詢、排行榜6個部分各個部分的具體功能的系統功能結構圖如圖3-1所示。

圖3-1系統功能結構圖

b069a6eaf139cd89070c6e80a52de4a7  (1)圖書借閱系統完成用戶的借書過程其數據流圖如圖3-2所示。

圖3-2借閱系統的數據流圖

eaf5fd59939d6200a67271b5116483d2  (2)還書系統完成圖書的歸還過程其數據流圖如圖3-3所示。

圖3-3歸還系統的數據流圖

c1b1df95232bfcc8fb740194c37cd06b ?。?)圖書檔案管理系統為用戶提供圖書檔案信息其數據流圖如圖3-4所示。

圖3-4圖書檔案管理數據流圖

e9f2f4174203d36092cc21ce5c607467 ?。?)讀者檔案系統用于記錄讀者的詳細信息其數據流圖如圖3-5所示。

圖3-5讀者檔案管理數據流圖

089b0380b4e603804a2996f4c64aa867  3.5系統流程圖

圖書管理系統的流程是用戶先輸入自己的帳號密碼及系統顯示的驗證碼進入系統如有一項不符合則不能進入系統,成功登陸系統后系統根劇登陸的帳號信息從數據庫中的數據進行對比判斷是讀者還是管理員,如果是讀者則能進行信息查詢,及修改自己的相關信息,查詢到自己所需要的圖書就能通過管理員進行借閱圖書、歸還圖書也是通過管理員完成的。如果不是讀者而是管理員,那管理員可以進行相關信息的查詢、添加刪除圖書及讀者的所有信息、設置相應的權限、為圖書更新排行榜的信息、以及完成讀者的圖書借閱與歸還。圖書管理系統的系統流程圖如圖3-6所示。

圖3-6圖書管理系統的流程圖

f7f84fa5b286c14ac66dda91068e1171  4數據總體結構設計

  4.1數據庫概念結構設計

數據庫概念結構設計是在需求分析的基礎上,設計出能夠滿足用戶需求的各種實體,以及它們之間的關系,為后面的邏輯結構設計打下基礎。這個階段不用考慮所采用的數據庫管理系統、操作系統類型、機器類型等問題。這階段可用的工具很多。用的最多的是E-R圖(Entity-Relation,實體-關系圖),另外還有許多計算機輔助工具(Computer Aided Software Engineering,CASE)可以幫助進行設計。本系統采用了E-R圖的方法進行數據庫概念結構設計。E-R圖是描述數據實體關系的一種直觀描述工具。這種圖中有:

(1)實體:用方框表示,方框內為實體的名稱。

(2)實體的各種屬性:用橢圓表示,橢圓內為屬性名稱。使用線段將其和響應的實體連接起來。

(3)實體之間的聯系:用菱形表示,菱形內為聯系的名稱。

實體和實體之間的聯系較多,比較常見的聯系有l:1,l:N和M:N這三種。

 4.2數據庫邏輯結構設計

概念結構是獨立于實際數據模型的信息結構,必須將其轉化為邏輯結構后才能進行數據庫應用的設計。也就是要將概念上的結構轉化為數據庫系統所支持的實際數據模型。

第一種轉化是將實體轉化為關系表。這種轉化較簡單,需要將實體的屬性定義為表的屬性即可。

第二種轉化是聯系的轉化。即將各個實體之間的聯系轉化為表格之間的關系,如外部鍵的定義。

在上面工作的基礎上歸納出人員管理數據庫表格的組成之間的聯系等等。該數據庫系統具有以下方面的特點:

結構合理,對一個人員建立多條記錄。

所建立的數據冗余度小,獨立性強。

建檔、修改、查詢、統計快速而準確。

保密性好、可靠性好。

圖書管理系統中要有圖書,圖書是圖書管理系統中密不可分的部分,因此要創建一圖書信息實體,用來保存圖書的詳細信息。圖書信息實體屬性圖如圖4-1所示。

圖4-1圖書信息實體屬性圖

677874dfaf431286cbb96f83383f2cdf  讀者是圖書管理系統重要組成部分,這里創建了一個讀者信息實體,用來存儲讀者的詳細信息。讀者信息實體E-R圖如圖4.2所示。

圖4-2讀者信息實體屬性圖

4d735eff50d654859331444dfe5a8688  圖書的借閱和歸還是圖書管理系統中的一項重要的環節,開發圖書管理系統就是為了方便讀者對圖書的借閱和歸還,因此要建立一個圖書借還實體,用來保存讀者對圖書的借閱和歸還的詳細信息。圖書的借閱和歸還實體屬性圖如圖4-3所示。

圖4-3讀者借還實體屬性圖

f17b4b98a518b0cd80761b73ea596310  圖書管理系統為了增加系統的安全性,管理員只有在系統登陸模塊驗證通過后才能進入管理員的操作界面,因此套在數據庫中創建一個存放登錄用戶信息的管理員實體。管理員實體屬性圖如圖4-4所示。

圖4-4管理員實體屬性圖

b57c6175f7352601ee2a3677e3d2697b  4.3圖書管理系統的系統E-R圖

圖書管理系統的系統E-R圖如圖4-5所示。

9d32cc3a10383500921096757a65081d  圖4-5圖書管理系統的系統E-R圖

  4.4數據表設計

本系統使用的數據庫管理系統為SQL Server 2005。數據庫中的表有管理員信息表、圖書信息表、讀者信息表、管理員權限表、圖書借閱歸還表等。

圖書管理員基本信息表tb_admin,如表4-6所示。

5f385465818d515acb2bc6e147b88b56

表4-6 tb_admin(管理員)表

37098f6a79a3e2183289bf6d83223a0b

表4-7 tb_reader(讀者信息)表

6e88a5ca5a56c56f8916d1333a88962a

表4-8 tb_bookkifo(圖書信息)表

圖書借閱和歸還信息表tb_borrowandback,如表4-9所示。

d70765a1b749a873ca5d7ff12bcffa0a

表4-9 tb_borrowandback(圖書借閱和歸還信息)表

550bb73ede6e5749d37119da65fe6317

表4-10 tb_purview(權限信息)表

 5圖書管理系統詳細設計

  5.1系統流程分析

根據開發圖書管理系統的需求分析,本系統設計了三種用戶,分別為系統管理員、教師和學生。

系統要求有系統管理員用戶,我們設定系統管理員,當系統管理員使用帳戶登錄后,需要查看有關圖書的一系列的信息,管理員可以通過系統導航菜單進入讀者管理界面、圖書管理界面、圖書借還界面、系統查詢界面、排行榜界面,在讀者界面中,管理員添加和修改學生或教師信息、用戶可以查看自己信息,在圖書管理界面管理員可以添加和修改圖書信息、用戶可查看圖書,在圖書借還界面完成讀者借書還書的操作,系統查詢界面管理員可以查看借出去的圖書信息及庫存的信息、用戶可以查找自己的所需的圖書,排行榜界面主要是可以讓用戶知道哪些圖書受到讀者的喜愛。讀者(老師和學生)使用讀者帳號登陸系統后,可以查詢自己所需要的圖書的信息、也可以查詢自己個人的基本信息及圖書的借還信息,還能查看排行榜的信息。讀者的借書和還書過程是通過管理員完成的。

 5.2主要模塊的運行

  5.2.1登陸界面

當用戶輸入用戶名、密碼,系統自動將輸入的信息和相關數據表中的內容進行比較,如果該用戶輸入的內容和數據表中的內容相符,則通過驗證,此次登錄成功;否則登錄失敗。比較的過程是由瀏覽器將指令,數據發送到Web服務器,Web服務器通過對數據庫進行查詢將結果返回到瀏覽器,從而端顯示成功的消息,用戶只有成功登陸系統后才能進行一系列的操作,如下圖5-1所示。

5-1圖書管理系統登陸界面

e6751e17382adbf9a813742ff24c6bef  5.2.2圖書信息管理模塊

圖書信息管理模塊主要分為查看圖書信息頁面和添加修改圖書信息頁面,用戶可以在查看圖書信息頁面查看圖書的基本信息,管理員也可以看這些信息,并且可以通過單擊“添加圖書信息”這個超級鏈接或GridView控件中的“詳情”超級鏈接轉到添加或刪除圖書信息界面,并在該頁中添家或修改圖書信息,如圖5-2與5-3所示。

ddf00b84f3e0c4cfec938a13ea607f1f

圖書信息管理模塊的實現,主要是使用了ADO.NET操作數據庫技術。

在使用ADO.NET技術操作數據庫時,主要用到了Connection、Command、DataAdaper和DataSet4個對象重要負責在Connection對象主要負責連接數據庫,Command對象主要負責生成并執行SQL語句,DataAdaper對象主要負責在Command對象執行完SQL語句后生成并填充DataSet和DataTable,而DataSet對象主要負責存取和更新數據。

 5.2.3圖書借還信息模塊

圖書借還管理模塊主要分為圖書借閱頁面和圖書歸還頁面,用戶可以在通過這個模塊查看圖書的借閱和歸還信息。管理員可以在圖書通過這個模塊來完成讀者借和還書的操作,如圖5-4與5-5所示。

ca1d87bd830f7e052212adb2dd7a0649

實現圖書的借還功能主要用到了GridView模板列技術。

 5.3系統開發的遇到的相關問題及解決

  5.3.1圖書管理系統索引

圖書管理系統開發中存在大量的數據和信息檢索,怎樣更好的檢索數據和信息操作是保證檢索速度的提高和數據的分頁顯示,主要考慮了以下幾個方面:

(1)設計邏輯結構時充分考慮冗余量和可處理性兩方面的要求,在接受冗余量的提下,盡量減少表的連接操作。

(2)關系的大小對查詢的影響也是很大的,因此為了提高數據庫的查詢速度,減小系的大小和數據量也是必要的。

(3)建立合理的索引結構。索引相當于一個映射機構,將鍵值轉換成相對應的

記錄地址,形成索引文件。

索引設計是數據庫物理設計的基本問題,也是較困難的問題,建立索引可以極大地提高系統的查詢速度,但是同時做Insert、Update、Delete操作時會降低速度,因為做這些操作的同時需要更新索引,所以不能對數據庫中所有的表都建立索引。比如滿足下列條件之一的不易建立索引:不出現或很少出現的屬性或表、屬性分布嚴重不均的屬性、經常更新的屬性或表、過長的屬性、太小的表等。

滿足下列條件之一的可以考慮建立索引:主鍵和外鍵都建立索引、對于以讀為主或只讀的表,只要需要,且存儲空間允許,可以減少連接開銷、對于等值查詢(即查詢條件以等號為比較符),最好建立索引、對查詢范圍(即查詢條件>,<,≤,≥為比較符),最好建立索引、有些查詢可以由檢索直接得到結果,不必訪問數據塊。

根據實際需要,讀者信息表,圖書信息表,圖書借還信息表,權限信息,管理員信息表等都建立索引,合理使用緩沖區。

 5.3.2如何驗證輸入的字符串

在圖書管理系統的開發過程中,需要對一些輸入的字符串進行驗證,例如金額、電話號碼、E-mail等,由于許多模塊都需要用到這些驗證,因此可以將其寫入到一個公共類中然后在其他的頁面中直接調用即可。C#中對字符串進行驗證時,可以使用Regex類,要使用正則表達式驗證輸入的字符串,如驗證輸入的字符串是否為E-mail的地址格式的實現方法。代碼如下:

#region驗證輸入為Email

///<summary>

///驗證輸入為Email

///</summary>

///<param name=”str”></param>

///<returns></returns>

public bool validateEmail(string str)

{

return Regex.IsMatch(str, “w+([-+.’]w+)* w+([-.]w+)*.w+([-.]w+)*”);

}

#endregion

 5.3.3自動計算圖書歸還日期

在圖書管理系統運行中會常常遇到這樣的問題:在借閱圖書時,需要自動計算圖書的歸還日期,而這個日期又不是固定不變的,它是需要根據系統日期和數據表中保存的各類圖書的最多借閱天數來計算的,即圖書歸還日期=“系統日期”+“最多借閱天數”。因此本系統是這樣解決問題的:首先獲取系統時間,然后從數據表中查詢出該類圖書最多借閱天數,最后計算歸還日期。計算方法如下:

首先取出所借圖書的最多借閱天數,然后根據圖書的最多借閱天數,使用TimeSpan.FromDays方法返回一個TimeSpan,最后使用當前時間與先返回的Timespan時間間隔相加。

自動計算圖書歸還日期的關鍵代碼如下:

int days=Convert.ToInt32(btypemanage.FindBTypeByName(btypemanage,

“tb_booktype”).Tables[0].Rows[0][2].ToString());

TimeSpan tspan=TimeSpan.FromDays((double)days);

borrowandbackmanage.YGBackTime=borrowandbackmanage.BorrowTime+tspan;

 5.3.4系統登陸驗證碼的實現

在學校圖書管理系統的開發過程中,怎么樣防止某些人利用某些惡意的軟件對圖書管理系統進行惡意的登陸來攻擊系統,增加圖書管理系統的安全性是一個重要的問題。在圖書管理系統的登陸模塊中加入一個驗證碼的功能,即用戶除了要輸入帳號和密碼還要輸入系統為用戶提供的驗證碼。驗證碼可以很好的解決了怎樣防止惡意用戶利用惡意軟件對系統頁面的瘋狂提交、以及暴力破解密碼進行登陸的問題。因此,設置一個隨機函數在數字0~9和英文字母A~Z中隨機抽取四個,在用戶打開登陸界面的時候,系統通過隨機生成器隨機生成4個數字或字母或數字加字母存放在緩存內,并出現在界面上順序是隨機的,當用戶登陸時輸入的驗證碼要與緩存中的進行對比符合就進入,不符合就不能登陸。系統在提供驗證碼時候要加入一些干擾的條件的,不過這些人的肉眼是很容易分辨,但機器人程序不能分辨,很好的防止某人利用機器人程序對系統的惡意操作增加了系統的安全性。驗證碼實現的關鍵代碼如下:

private string GenerateCheckCode()

{

int number;

char code;

string checkCode=String.Empty;

System.Random random=new Random();

for(int i=0;i<4;i++)

{

number=random.Next();

if(number%2==0)

code=(char)(‘0’+(char)(number%10));

else

code=(char)(‘A’+(char)(number%26));

checkCode+=code.ToString();

}

Response.Cookies.Add(new HttpCookie(“CheckCode”,checkCode));

return checkCode;

}

private void CreateCheckCodeImage(string checkCode)

{

if(checkCode==null||checkCode.Trim()==String.Empty)

return;

System.Drawing.Bitmap image=new System.Drawing.Bitmap((int)Math.Ceiling((checkCode.Length*12.5)),22);

Graphics g=Graphics.FromImage(image);

try

{

//生成隨機生成器

Random random=new Random();

//清空圖片背景色

g.Clear(Color.White);

//畫圖片的背景噪音線

for(int i=0;i<2;i++)

{

int x1=random.Next(image.Width);

int x2=random.Next(image.Width);

int y1=random.Next(image.Height);

int y2=random.Next(image.Height);

g.DrawLine(new Pen(Color.Black),x1,y1,x2,y2);

}

 6結論

經過幾個月的設計和開發,學校圖書管理系統基本開發完畢。其功能基本符合用戶需求。對于數據的一致性的問題也通過程序進行了有效的解決。但是該系統還有許多不盡如人意的地方,在今后有待進一步改善。通過這次畢業設計真切地體會到畢業設計的目的并不止于自己單純任務的完成,而在于學習新的知識并掌握具體的方法,如何具體使用和具體應用你所學所用的語言。從而獲得一種本領:就是融會貫通各種語言?;厥渍麄€開發設計過程,我學到了很多書本上學不到的東西。比如以前開發軟件的時候,一般做的就是編碼工作,實現比較簡單的功能。但是這次畢業設計,我要負責圖書管理系統的整個開發過程,包括系統可行性分析、系統需求分析、系統概要設計、系統詳細設計等方面的工作。在每個設計階段我都能學到一些新知識,對我的動手能力提高很大。在整個畢業設計過程中,我基本上完成了圖書管理系統各個模塊的功能,達到了畢業設計的要求。頁面設計還有進一步改善的地方,我會在今后的學習工作中著重加強這方面的鍛煉。

在以后的工作中,還會遇到很多類似的情況,此次畢業設計為我以后的工作積累了很多寶貴的經驗。這幾個月中,從接到設計課題到具體設計再到完成系統開發,是一個不斷地遇到問題與解決問題的過程。其中包括:分析各種需求、完善各種功能、增加必要環節、對各部分及整體進行檢測與維護。當然仍存在許多問題不能解決地盡善盡美,還需不斷地繼續與探索。在結束設計的同時也感到了勞動的艱辛與勞動成果的來之不易,明白了畢業設計是給自己提供了一個鍛煉、升華、提高、完善的機會。

 6.1主要研究內容及成果

介紹學校圖書管理系統根據實際的需求及發展情況進行設計與開發情況,及介紹本系統設計應用平臺及技術支持講述本系統設計理念及具體設計情況,講解本系統具體制作方法及核心代碼。開發的圖書管理系統基本上能完成預期的目標,大致能滿足讀者和管理員的要求。不過也有一些不足之處需要好好改進。

6.2今后進一步研究方向

(1)對頁面進行美化,使界面變的更美觀一點。

(2)增加數據轉換接口,使得本系統能與學校圖書管理系統數據庫進行無縫連接。

(3)添加系統功能,本系統只有讓讀者知道還書的期限,當圖書超期而讀者也沒注意要自己所借圖書超期了,就無法及時的還書了,因此增加圖書到期催還功能,能讓讀者在自己信息查詢時候就能看到系統對自己所借圖書的超期提醒以方便讀者的圖書歸還。

 參考文獻

[1]劉乃麗.精通ASP.NET2.0+SQLServer 2005項目開發.[M].北京:人民郵電出版社,2007:100~150.

[2]易向東,陳蓓,萬英編著.C#程序員開發指南[M].北京:北京希望電子出版社,2006:212~232.

[3](美)內格爾,伊夫杰,格林等.C#高級編程(第四版)[M].李敏波.北京:清華大學出版社,2006:80~100.

[4](美)Kaili Watson.C#2005數據庫編程經典教程[M].人民郵電出版社,2007:90~120.

[5](美)沃爾特,本-甘,薩卡.Microsoft SQL Server 2005技術內幕-T-SQL程序設計[M].北京:電子工業出版社,2007:50~80.

[6]劉燁,季石磊等.C#編程及應用程序開發教程[M].北京:清華大學出版社,2007:132~180.

[7]殷泰暉,張強,楊豹等C#編程從基礎到實踐,電子工業出版社,2007:100~120

[8]李永平.ASP.NET 2.0(C#)基礎教程[M].北京:清華大學出版社,2008:123~143.

[9]微軟公司著.熊盛新,許志慶,李欽譯.Visual C#.NET語言參考手冊[M].北京:清華大學出版社,2002年:160~180.

[10]王珊,薩師煊.數據庫系統概論(第四版)[M].高等教育出版社,2006:70~100.

[11]馬軍.精通ASP.NET2.0網絡應用系統開發[M].人民郵電出版社,2006:110~140.

[12]歐立奇,康祥順,馬煜編著.Visual C#.NET案例開發集錦[M].北京:電子工業出版社,2006:233~245.

 致謝

為期四年的大學本科的學習生活即將結束,在此,感謝我的家人,是他們的支持和鼓勵使我有了四年美好的大學時光。我要感謝所有曾經教導過我的老師和關心過我的同學,感謝他們在我學習成長過程中所給予我的幫助。

這次畢業設計能成功完成,要特別感謝我的指導老師,感謝老師對我的作品提出的建議和指導。在整個設計階段,老師在我有困難的時候細心為我指導,給了我很大的幫助。在論文完成之際,謹向我尊敬的導師表示誠摯的謝意,感謝許老師對我的關心和幫助。在整個系統的開發過程中,同學和朋友給了我很大的幫助。感謝給予我幫助的同學和朋友們,他們在我的整個設計過程中給我提供了大量的技術指導和實踐機會。

衷心的感謝你們!

學校圖書管理系統的開發

學校圖書管理系統的開發

VIP月卡免費
VIP年會員免費
價格 ¥9.90 發布時間 2023年10月25日
已付費?登錄刷新
下載提示:

1、如文檔侵犯商業秘密、侵犯著作權、侵犯人身權等,請點擊“文章版權申述”(推薦),也可以打舉報電話:18735597641(電話支持時間:9:00-18:30)。

2、網站文檔一經付費(服務費),不意味著購買了該文檔的版權,僅供個人/單位學習、研究之用,不得用于商業用途,未經授權,嚴禁復制、發行、匯編、翻譯或者網絡傳播等,侵權必究。

3、本站所有內容均由合作方或網友投稿,本站不對文檔的完整性、權威性及其觀點立場正確性做任何保證或承諾!文檔內容僅供研究參考,付費前請自行鑒別。如您付費,意味著您自己接受本站規則且自行承擔風險,本站不退款、不進行額外附加服務。

原創文章,作者:1158,如若轉載,請注明出處:http://www.tj-jlwy.com/chachong/174800.html,

(0)
上一篇 2023年10月25日
下一篇 2023年10月25日

相關推薦

My title page contents 女神漫画成人十八禁在线观看|888米奇狠狠色俺去啦|亚洲国产嫩草成人影院|国产午夜成人久久无码一区二区
? ? ?