畢設(shè)-基于C語言的winform圖書管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第1頁
畢設(shè)-基于C語言的winform圖書管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第2頁
畢設(shè)-基于C語言的winform圖書管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第3頁
畢設(shè)-基于C語言的winform圖書管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第4頁
畢設(shè)-基于C語言的winform圖書管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于C#語言的winform圖書管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)目錄TOC\o"1-3"\h\u786目錄 115822摘要 32238Abstract 332755第一章引言 4301961.1課題研究背景 456311.2研究目的及意義 4125151.3課題研究?jī)?nèi)容 5111631.4課題研究綜述 6255951.4.1國(guó)內(nèi)外研究現(xiàn)狀 6248841.4.2圖書管理系統(tǒng)的發(fā)展方向 622186第二章系統(tǒng)開發(fā)相關(guān)技術(shù)研究 7200542.1軟件體系結(jié)構(gòu) 7166032.1.1C/S結(jié)構(gòu) 7306232.1.2B/S結(jié)構(gòu) 860272.2.NET技術(shù)概述 9239462.2.1.NET框架 107582.2.2Winform介紹 11129042.2.3C#與.NET的關(guān)系 12294732.3VisualStudio簡(jiǎn)介 12310342.4SQLServer數(shù)據(jù)庫概述 1211730第三章系統(tǒng)的需求分析 1372473.1可行性需求分析 13187453.2性能需求分析 14168453.3用戶需求分析 14247793.3.1需求概述 1455223.3.2用例模型 15322973.4系統(tǒng)非功能性需求 17151213.4.1可用性 18158773.4.2可維護(hù)性 18284333.4.3可擴(kuò)展性 18146913.4.4容錯(cuò)性 1824703第四章系統(tǒng)設(shè)計(jì) 19157814.1總體設(shè)計(jì) 19165604.1.1系統(tǒng)角色設(shè)計(jì) 19292574.1.2功能模塊總體設(shè)計(jì) 19201614.2詳細(xì)設(shè)計(jì) 21167054.2.1用戶登錄模塊 21325094.2.2系統(tǒng)管理模塊 23161954.2.3圖書管理模塊 2498414.2.4讀者管理模塊 25316364.2.5圖書借閱管理模塊 2651394.2.6查詢圖書信息模塊 2769274.3數(shù)據(jù)庫設(shè)計(jì) 2731084.3.1概念結(jié)構(gòu)設(shè)計(jì) 27327024.3.2邏輯結(jié)構(gòu)設(shè)計(jì) 285209第五章系統(tǒng)主要功能的實(shí)現(xiàn) 31270475.1用戶登錄模塊 3143655.2查詢圖書模塊 33171195.3讀者管理模塊 3670525.4圖書管理模塊 37216405.5借閱管理模塊 4030781第六章總結(jié)與展望 4466746.1總結(jié) 44253196.2展望 4515832參考文獻(xiàn) 452917致謝 46摘要隨著科學(xué)技術(shù)的進(jìn)步和計(jì)算機(jī)行業(yè)的快速發(fā)展,人們的工作效率顯著提高。計(jì)算機(jī)信息處理系統(tǒng)的引進(jìn)已經(jīng)徹底改變了許多系統(tǒng)的經(jīng)營(yíng)管理方式。高校圖書館作為一種信息資源的集散地,存在圖書借閱頻繁、用戶管理多變等問題。從圖書信息管理和圖書用戶來設(shè)計(jì),充分實(shí)現(xiàn)高校圖書信息的系統(tǒng)管理,是當(dāng)前高校圖書信息管理系統(tǒng)設(shè)計(jì)與開發(fā)的必然趨勢(shì)。圖書管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫建立和維護(hù),以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。前者要求建立數(shù)據(jù)一致和完整性強(qiáng)、數(shù)據(jù)安全性好的庫。后者要求應(yīng)用程序功能完備,容易使用等特點(diǎn)。本系統(tǒng)使用Winform窗體進(jìn)行界面設(shè)計(jì),結(jié)合圖書館的要求,對(duì)SQLServer數(shù)據(jù)庫、SQL語言原理、C#語言的Winform應(yīng)用程序設(shè)計(jì),數(shù)據(jù)庫技術(shù)進(jìn)行了較深入的學(xué)習(xí)和應(yīng)用。主要完成對(duì)圖書管理系統(tǒng)的需求分析、詳細(xì)設(shè)計(jì)、數(shù)據(jù)庫模式分析,并由此設(shè)計(jì)了數(shù)據(jù)庫結(jié)構(gòu)和應(yīng)用程序。系統(tǒng)運(yùn)行結(jié)構(gòu)證明,所設(shè)計(jì)的圖書管理系統(tǒng)可以滿足系統(tǒng)管理員、圖書管理員、讀者管理員和讀者對(duì)系統(tǒng)的需要。當(dāng)本系統(tǒng)投入實(shí)際使用后,即可提高日常的工作效率,使得人力資源大大減少,把管理員從繁瑣的工作中釋放出來。在論文的最后,總結(jié)了本文的工作內(nèi)容,并對(duì)接下來的工作進(jìn)行展望。關(guān)鍵字:.NET;C#;SQLServer數(shù)據(jù)庫;圖書管理系統(tǒng);Winform應(yīng)用程序開發(fā)Abstract第一章引言1.1課題研究背景隨著高等學(xué)校招生規(guī)模的不斷擴(kuò)大,高校信息化建設(shè)在高校管理和服務(wù)中顯得極為緊迫和必要。高校信息化建設(shè)主要為教育管理、教學(xué)管理、圖書管理、財(cái)務(wù)管理、后勤服務(wù)管理等。圖書信息化管理已成為高校信息化建設(shè)的重要組成部分,無論是中等職業(yè)學(xué)校、高等職業(yè)學(xué)校,還是普通高等學(xué)校都建設(shè)起了大小不同的圖書館或是資料室,但由于各個(gè)學(xué)校的信息化程度不一樣,絕大多數(shù)學(xué)校的圖書管理系統(tǒng)不盡人意,如無法預(yù)約借閱、網(wǎng)上查詢等,這就導(dǎo)致有借閱者為了借閱某本圖書,而查閱了多個(gè)圖書管理庫,浪費(fèi)了大量時(shí)間以及精力。圖書館作為人類知識(shí)的寶庫,為人類知識(shí)的積累和傳播發(fā)揮重要作用。圖書館是用科學(xué)的方法搜集、整理、保管、傳播以及利用資料,為一定的經(jīng)濟(jì)、政治服務(wù)的科學(xué)、文化、教育機(jī)構(gòu)。隨著信息科學(xué)的迅猛發(fā)展,信息化徹底改變了圖書館工作人員傳統(tǒng)的工作方法,計(jì)算機(jī)已成為圖書館館員的工作工具。目前很多大型的圖書館已經(jīng)有一整套比較完整的信息管理系統(tǒng),但大多圖書管理系統(tǒng)都是比較常見C/S的體系結(jié)構(gòu)軟件,這種結(jié)構(gòu)的軟件對(duì)于小型圖書館比較適用,而對(duì)大型一些的圖書館,特別是校園網(wǎng)上的應(yīng)用,就遇到了許多問題,如客戶端安裝維護(hù)問題、系統(tǒng)反應(yīng)慢。1.2研究目的及意義科技高速發(fā)展,計(jì)算機(jī)的價(jià)格已經(jīng)普遍較為低廉。但是其性能卻有了很大的提高。如今在各個(gè)高校都配備了許多電腦,老師和學(xué)生都具備一定程度的電腦知識(shí)。在學(xué)校的學(xué)習(xí)和辦公中計(jì)算機(jī)被廣泛的應(yīng)用。能得到如此廣泛應(yīng)用主要是由于以下幾個(gè)方面的原因:計(jì)算機(jī)的運(yùn)算速度非??欤梢员热肆Y源帶來更大效率;計(jì)算機(jī)可以為學(xué)校在各個(gè)方面借閱各種資源;計(jì)算機(jī)的應(yīng)用可以使教職工的工作效率大大提高;計(jì)算機(jī)在安全性方面也有一定的保障。本論文旨在通過對(duì)圖書信息管理系統(tǒng)構(gòu)建相關(guān)理論的系統(tǒng)研究,結(jié)合高校信息化建設(shè)的實(shí)際情況,建立一個(gè)先進(jìn)、靈活的圖書信息管理系統(tǒng),為高校師生服務(wù),促進(jìn)我國(guó)高校信息化建設(shè)水平邁上新的臺(tái)階。其研究的意義在于:圖書信息管理系統(tǒng)的實(shí)施,管理人員可以實(shí)時(shí)統(tǒng)計(jì)圖書庫存、借閱狀況等,同時(shí)可以提高圖書館工作人員的總體素質(zhì)和管理水平??傊瑲w納起來的優(yōu)點(diǎn):用數(shù)字的形式來記錄和存儲(chǔ)學(xué)校的圖書和電子資源的信息,包括圖書、讀者、還有借閱信息。使得更安全和高效大大減少了人力資源的浪費(fèi),只需要為數(shù)不多的幾個(gè)管理員就可以完成傳統(tǒng)需要很多人才能完成的工作量;查詢的效率大大得到提高,管理系統(tǒng)可以為在校的老師和學(xué)生提供多樣化的查詢手段,來實(shí)現(xiàn)方便和快捷的查詢讀者所需要的各種資源情況。綜上所述,為了更好的服務(wù)廣大讀者,提高效率節(jié)約資源,在現(xiàn)行的人工流程的上開發(fā)圖書管理系統(tǒng),來滿足當(dāng)前圖書管理的要求,提升工作效率。本研究的主要目的是設(shè)計(jì)和實(shí)現(xiàn)一個(gè)具有一定實(shí)用意義的圖書館管理平臺(tái)。1.3課題研究?jī)?nèi)容結(jié)合國(guó)內(nèi)外對(duì)圖書信息管理系統(tǒng)的建設(shè)以及軟件開發(fā)思想的研究情況,開發(fā)出C/S模式的高校圖書信息管理系統(tǒng)。主要工作為通過對(duì)現(xiàn)有圖書信息管理系統(tǒng)建設(shè)情況的研究,分析現(xiàn)有高校圖書信息管理系統(tǒng)存在的不足。對(duì)現(xiàn)有軟件開發(fā)技術(shù)的研究,搭建起高校圖書信息管理系統(tǒng)的開發(fā)環(huán)境。通過對(duì)高校圖書信息管理系統(tǒng)的需求分析,采用.NET技術(shù),設(shè)計(jì)與開發(fā)出了先進(jìn)的高校圖書信息管理系統(tǒng)。具體為以下:1)綜述高校圖書管理中存在的問題以及信息化建設(shè)研究現(xiàn)狀,并對(duì)基于C/S模式開發(fā)的網(wǎng)絡(luò)圖書管理信息系統(tǒng)中的關(guān)鍵技術(shù)進(jìn)行了簡(jiǎn)單論述,闡明基本開發(fā)路線。2)完成圖書管理信息系統(tǒng)的需求分析。分析中將具體模塊進(jìn)行細(xì)分,利用結(jié)構(gòu)化分析方法獲取了系統(tǒng)主要功能模塊需求以及主要的數(shù)據(jù)流程,按照軟件需求規(guī)格說明書的要求對(duì)系統(tǒng)需求分析進(jìn)行了整理,著重從系統(tǒng)功能需求、性能需求、數(shù)據(jù)流圖以及系統(tǒng)設(shè)計(jì)要求等要素,給出了主要分析過程。3)完成高校圖書管理信息系統(tǒng)的總體結(jié)構(gòu)設(shè)計(jì)與詳細(xì)設(shè)計(jì)。對(duì)系統(tǒng)各用戶特征及其主要功能業(yè)務(wù)流程、核心類及其關(guān)系,數(shù)據(jù)結(jié)構(gòu)及其模式等內(nèi)容進(jìn)行了詳細(xì)設(shè)計(jì),給出了主要設(shè)計(jì)文檔,最后對(duì)系統(tǒng)的調(diào)試與測(cè)試進(jìn)行了闡述。4)利用VisualS集成開發(fā)工具,按照軟件設(shè)計(jì)的規(guī)范化要求,完成高校圖書管理信息系統(tǒng)功能模塊的代碼實(shí)現(xiàn),實(shí)現(xiàn)圖書信息管理、圖書借閱管理、圖書檢索、用戶管理等主要模塊的功能。給出詳細(xì)的測(cè)試用例及測(cè)試結(jié)果分析。1.4課題研究綜述1.4.1國(guó)內(nèi)外研究現(xiàn)狀我國(guó)的圖書管理系統(tǒng)始于上世紀(jì)八十年代初,經(jīng)過了30年的發(fā)展,如今已經(jīng)取得了傲人的成績(jī)。目前,我國(guó)絕大多數(shù)的圖書館已經(jīng)把計(jì)算機(jī)應(yīng)用到了圖書的管理當(dāng)中。圖書館已經(jīng)發(fā)展到計(jì)算機(jī)系統(tǒng)管理的自動(dòng)化、網(wǎng)絡(luò)化、數(shù)字化操作模式。根據(jù)圖書館的工作流程,國(guó)內(nèi)圖書管理系統(tǒng)設(shè)置了采訪、編目、流通、期刊、參考咨詢、聯(lián)機(jī)檢索、公共查詢等子系統(tǒng),其功能覆蓋了圖書館的全部業(yè)務(wù)環(huán)節(jié)。圖書管理系統(tǒng)的數(shù)據(jù)資源在子系統(tǒng)之間具有高度的共享一致性,數(shù)據(jù)資源具有較高的集成性。國(guó)外對(duì)信息檢索技術(shù)的研究始于上世紀(jì)70年代的美國(guó)海軍兵器中心,其研究主要內(nèi)容是單詞匹配技術(shù)。隨著這項(xiàng)技術(shù)的發(fā)展,信息檢索、自動(dòng)分類、自動(dòng)索引等技術(shù)的研究工作也相繼展開,圖書管理系統(tǒng)的發(fā)展由此開始。上世紀(jì)90年代初,美國(guó)的科學(xué)家首次提出數(shù)字圖書館這一概念,近二十年的研究與發(fā)展使其各方面技術(shù)經(jīng)驗(yàn)都較為完備。網(wǎng)絡(luò)技術(shù)的飛速發(fā)展全面帶動(dòng)了國(guó)外圖書管理系統(tǒng)自動(dòng)化的研究。在研究初期,僅在英國(guó),就有120多個(gè)商家對(duì)圖書管理系統(tǒng)進(jìn)行開發(fā)。國(guó)外比較知名的圖書管理系統(tǒng)軟件有:美國(guó)的SIRSI、INNOPAC以及澳大利亞的HORIZON等。國(guó)外的產(chǎn)品在開發(fā)、銷售、售后服務(wù)及版本的升級(jí)等方面具有較強(qiáng)的實(shí)力,而且其產(chǎn)品經(jīng)過了多年市場(chǎng)使用檢驗(yàn),反復(fù)修改,系統(tǒng)更加完善,更具有先進(jìn)性和穩(wěn)定性。1.4.2圖書管理系統(tǒng)的發(fā)展方向隨著高校信息化的不斷推進(jìn),高校圖書信息管理系統(tǒng)呈現(xiàn)出如下發(fā)展方向:(1)高校圖書信息管理系統(tǒng)必須使用高新技術(shù)做支撐。隨著高校規(guī)模的擴(kuò)張,無論是師生用戶,還是圖書信息都不斷增大,許多高校建立了多個(gè)校區(qū),多個(gè)圖書館,這就要求需要采用高新技術(shù)如數(shù)據(jù)倉庫、高效聯(lián)機(jī)解析處理、數(shù)據(jù)挖掘等技術(shù)對(duì)圖書信息進(jìn)行管理,實(shí)現(xiàn)分布式圖書資源庫的可互操作性。(2)高校圖書信息管理系統(tǒng)要實(shí)現(xiàn)圖書館的數(shù)字化。隨著因特網(wǎng)的發(fā)展,用戶希望無論在何處都能夠查詢到圖書信息,這就要求系統(tǒng)能夠突破時(shí)空限制為用戶全方位的信息服務(wù)。第二章系統(tǒng)開發(fā)相關(guān)技術(shù)研究應(yīng)用系統(tǒng)的實(shí)現(xiàn)技術(shù)一直是軟件工程領(lǐng)域的一大研究熱點(diǎn),一般軟件開發(fā)包含了2種模式,即C/S和B/S模式,這2種模式,各有自己的優(yōu)缺點(diǎn)。在對(duì)應(yīng)用系統(tǒng)開發(fā)之前,需要對(duì)軟件構(gòu)架、編程語言、開發(fā)技術(shù)以及數(shù)據(jù)庫進(jìn)行研究,才能開發(fā)出系統(tǒng)高的應(yīng)用程序。2.1軟件體系結(jié)構(gòu)軟件體系結(jié)構(gòu)是具有一定形式的結(jié)構(gòu)化元素,即構(gòu)件的集合,包括處理構(gòu)件、數(shù)據(jù)構(gòu)件和連接構(gòu)件。處理構(gòu)件負(fù)責(zé)對(duì)數(shù)據(jù)進(jìn)行加工,數(shù)據(jù)構(gòu)件是被加工的信息,連接構(gòu)件把體系結(jié)構(gòu)的不同部分組組合連接起來。這一定義注重區(qū)分處理構(gòu)件、數(shù)據(jù)構(gòu)件和連接構(gòu)件,這一方法在其他的定義和方法中基本上得到保持。其發(fā)展過程可以分為以下三個(gè)階段:集中式計(jì)算結(jié)構(gòu)、客戶機(jī)/服務(wù)器計(jì)算結(jié)構(gòu)(簡(jiǎn)稱C/S結(jié)構(gòu))、瀏覽器服務(wù)器計(jì)算結(jié)構(gòu)(簡(jiǎn)稱B/S結(jié)構(gòu))。集中式計(jì)算機(jī)結(jié)構(gòu)下客戶、數(shù)據(jù)和程序被集中在主機(jī)上,通常只有少量的GUI界面,對(duì)遠(yuǎn)程數(shù)據(jù)庫的訪問比較困難。這種結(jié)構(gòu)由于信息共享能力較差,屬于全封閉式系統(tǒng),且不同系統(tǒng)之間無法進(jìn)行交流,系統(tǒng)擴(kuò)展也不方便,已經(jīng)無法適應(yīng)信息技術(shù)發(fā)展的需求。2.1.1C/S結(jié)構(gòu)C/S結(jié)構(gòu)的基本原則是將計(jì)算機(jī)應(yīng)用任務(wù)分解成多個(gè)子任務(wù),由多臺(tái)計(jì)算機(jī)分工完成,即采用“功能分布”原則。客戶機(jī)/服務(wù)器結(jié)構(gòu),即所謂的C/S結(jié)構(gòu)作為一種較為傳統(tǒng)的軟件體系結(jié)構(gòu),其優(yōu)點(diǎn)在可以很好的發(fā)揮客戶端和服務(wù)器端的資源優(yōu)勢(shì),通過給兩端分配不同的任務(wù)來實(shí)現(xiàn)系統(tǒng)的運(yùn)行。其結(jié)構(gòu)如圖所示。圖C/S模式體系結(jié)構(gòu)圖Client和Server常常分別處在相距很遠(yuǎn)的兩臺(tái)計(jì)算機(jī)上,Client程序的任務(wù)是將用戶的要求提交給Server程序,再將Server程序返回的結(jié)果以特定的形式顯示給用戶;Server程序的任務(wù)是接收客戶程序提出的服務(wù)請(qǐng)求,進(jìn)行相應(yīng)的處理,再將結(jié)果返回給客戶程序。C/S結(jié)構(gòu)的優(yōu)點(diǎn)是能充分發(fā)揮客戶端PC的處理能力,很多工作可以在客戶端處理后再提交給服務(wù)器。對(duì)應(yīng)的優(yōu)點(diǎn)就是客戶端響應(yīng)速度快。2.1.2B/S結(jié)構(gòu)B/S結(jié)構(gòu)是對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。本質(zhì)上,Browser/Server也是一種Client/Server結(jié)構(gòu),它是一種由傳統(tǒng)的二層Client/Server結(jié)構(gòu)發(fā)展而來的三層Client/Server結(jié)構(gòu)在Web上應(yīng)用的特例。三層體系結(jié)構(gòu)是在兩層體系結(jié)構(gòu)的中間增加了一層(通常稱為中間層)來實(shí)現(xiàn)業(yè)務(wù)邏輯的表達(dá)。分布式多層體系結(jié)構(gòu)是指將系統(tǒng)分散到不同的機(jī)器上,并把中間層進(jìn)行了模塊化處理。由傳統(tǒng)的二層Client/Server結(jié)構(gòu)發(fā)展而來的三層Client/Server結(jié)構(gòu)在Web上應(yīng)用的特例。B/S架構(gòu)體系結(jié)構(gòu)如下圖所示。它由三部分組成:客戶機(jī)、應(yīng)用服務(wù)器和數(shù)據(jù)服務(wù)器。圖B/S三層架構(gòu)模型目前,常見的應(yīng)用架構(gòu)有兩種:B/S結(jié)構(gòu)和C/S結(jié)構(gòu)。B/S結(jié)構(gòu)系統(tǒng)的主要優(yōu)點(diǎn)是系統(tǒng)的安裝、修改和維護(hù)全在服務(wù)器端解決,達(dá)到了“零客戶端”的功能,但其缺點(diǎn)是安全性難以控制,數(shù)據(jù)處理的響應(yīng)速度不高,數(shù)據(jù)的動(dòng)態(tài)交互性不強(qiáng),不利于在線事務(wù)處理(OLTP)應(yīng)用。C/S結(jié)構(gòu)系統(tǒng)的優(yōu)點(diǎn)是客戶端的安全性較高,數(shù)據(jù)處理的相應(yīng)速度快,數(shù)據(jù)的動(dòng)態(tài)交互性強(qiáng),缺點(diǎn)是客戶端程序設(shè)計(jì)復(fù)雜,軟件的移植、維護(hù)和升級(jí)困難。2.2.NET技術(shù)概述.NETFramework技術(shù)是微軟公司推出的一個(gè)全新開發(fā)框架概念,它代表了一個(gè)集合、一個(gè)環(huán)境、一個(gè)可支持下一代Internet的可編程結(jié)構(gòu)。它是一個(gè)支持環(huán)境與Windows一樣,.NET也是一個(gè)位于客戶機(jī)上的用戶環(huán)境和基礎(chǔ)用戶服務(wù)集合。.NET的最終目標(biāo)就是讓用戶無論在何方、何時(shí)、何設(shè)備都可以訪問到所需要的資源。用戶并不要知道這些資源存放在何處,而只需發(fā)出請(qǐng)求,然后就能接受到響應(yīng)結(jié)果,具體復(fù)雜處理過程對(duì)用戶而言是透明的。其最終目的就是將互聯(lián)網(wǎng)作為新一代操作系統(tǒng)的基礎(chǔ),對(duì)互聯(lián)網(wǎng)的設(shè)計(jì)思想進(jìn)行擴(kuò)展。.NET框架可分為兩部分:公共語言運(yùn)行環(huán)境CLR(CommonLanguageRuntime)和.NETFramework框架的類庫。其基本框架如下圖:圖.NET平臺(tái)框架結(jié)構(gòu)圖公共語言運(yùn)行環(huán)境在框架的底層,是負(fù)責(zé)程序的運(yùn)行,具有內(nèi)存、線程、安全和異常的管理功能以及通用類型系統(tǒng)與生命周期監(jiān)控等服務(wù)。在公共語言運(yùn)行環(huán)境之上的是.NET框架的類庫,具有多種類以及接口。公共語言運(yùn)行庫(CLR)是.NET的基礎(chǔ),它為各種各樣.NET語言提供了公共的類庫,也為用這些語言編寫的應(yīng)用程序提供了運(yùn)行環(huán)境。使用針對(duì)公共語言運(yùn)行庫的語言編譯器開發(fā)的代碼稱為托管代碼。類庫是一個(gè)可重用類型集合,具有綜合性及面向?qū)ο蟮奶卣?。使用者可以利用類庫來進(jìn)行多種應(yīng)用程序的開發(fā),包括傳統(tǒng)的基于命令行或基于圖形用戶界面的應(yīng)用程序,也可以包括基于ASP.NET所提供的最新應(yīng)用程序。2.2.1.NET框架.NET框架是.NET平臺(tái)的重要組成部分,其目的是便于開發(fā)者更加容易地建立網(wǎng)絡(luò)應(yīng)用程序和WEB服務(wù)。它簡(jiǎn)化了在高度分布式Internet環(huán)境中進(jìn)行應(yīng)用程序開發(fā)。.NET技術(shù)的核心的.NET框架,它是基于網(wǎng)絡(luò)基礎(chǔ)的開發(fā)工具。.NETFramework包括了5個(gè)層次:通用語言運(yùn)行環(huán)境(CLR)、統(tǒng)一基礎(chǔ)類庫、ADO.NET、ASP.NET和通用語言規(guī)范(CLS),如下圖所示。圖.NET平臺(tái)框架支持環(huán)境.NETFramework主要功能如下:(1)提供了豐富的框架,從而使用戶可以NETFramework快速進(jìn)行數(shù)據(jù)驅(qū)動(dòng)的開發(fā),而無需編寫代碼,ASP.NETAJA的一項(xiàng)新增功能,對(duì)管理瀏覽器歷史記錄提供了支持。(2)對(duì)公共語言運(yùn)行時(shí)的核心改進(jìn)包括:改進(jìn)了.NETFramework本機(jī)映像的布局、選擇不再對(duì)完全受信任的程序集進(jìn)行強(qiáng)名稱驗(yàn)證、提高了應(yīng)用程序啟動(dòng)性能、改進(jìn)了生成的代碼以縮短端對(duì)端應(yīng)用程序執(zhí)行時(shí)間、選擇在ASLR(地址空間布局隨機(jī)化)模式下運(yùn)行托管代碼(如果操作系統(tǒng)支持)。(3)提高了WindowsPresentationFoundation的性能,包括縮短了啟動(dòng)時(shí)間,提高了與位圖效果有關(guān)的性能。WPF的其他新增功能包括:改善了對(duì)業(yè)務(wù)線應(yīng)用程序、本機(jī)初始屏幕、DirectX像素著色器的支持,并且新增了WebBrowser控件。(4)為解決腳本環(huán)境或解釋環(huán)境的性能問題,提供了一個(gè)代碼執(zhí)行環(huán)境。統(tǒng)一開發(fā)人員個(gè)體經(jīng)驗(yàn)對(duì)應(yīng)用程序開發(fā)的影響。提供標(biāo)準(zhǔn)化的通信服務(wù),基于.NETFramework的代碼與任何其他代碼可以集成交流。2.2.2Winform介紹WinForm是.Net開發(fā)平臺(tái)中對(duì)WindowsForm的一種稱謂。Windows窗體的一些重要特點(diǎn)如下:功能強(qiáng)大:Windows窗體可用于設(shè)計(jì)窗體和可視控件,以創(chuàng)建豐富的基于Windows的應(yīng)用程序。操作方便:新的數(shù)據(jù)提供程序管理:數(shù)據(jù)提供程序管理提供易于連接OLEDB和ODBC數(shù)據(jù)源的數(shù)據(jù)控件,包括MicrosoftSQLServer、MicrosoftAccess、JET、DB2以及Oracle等。使用安全:Windows窗體充分利用公共語言運(yùn)行庫的安全特性。這就意味著,一切都可以通過Windows窗體來實(shí)現(xiàn),包括在瀏覽器中運(yùn)行的不可信控件和用戶硬盤上安裝的完全可信的應(yīng)用程序。優(yōu)點(diǎn):控件靈活:Windows窗體提供了一套豐富的控件,并且開發(fā)人員可以定義自己有特色的新的控件。WinForm控件是指以輸入或操作數(shù)據(jù)的對(duì)象。比如ComponentOne是.NET平臺(tái)下對(duì)數(shù)據(jù)和方法的封裝。有自己的屬性和方法。屬性是控件數(shù)據(jù)的簡(jiǎn)單訪問者。方法則是控件的一些簡(jiǎn)單而可見的功能。包含在.NETFramework中的Windows窗體類旨在用于GUI開發(fā)。您可以輕松創(chuàng)建具有適應(yīng)多變的商業(yè)需求所需的靈活性的命令窗口、按鈕、菜單、工具欄和其他屏幕元素。數(shù)據(jù)管理:方便的數(shù)據(jù)顯示和操作:應(yīng)用程序開發(fā)中最常見的情形之一是在窗體上顯示數(shù)據(jù)。Windows窗體對(duì)數(shù)據(jù)庫處理提供全面支持??梢栽L問數(shù)據(jù)庫中的數(shù)據(jù),并在窗體上顯示和操作數(shù)據(jù)。向?qū)鞔_:向用戶提供創(chuàng)建窗體、數(shù)據(jù)處理、打包和部署等的分布指導(dǎo)。2.2.3C#與.NET的關(guān)系為了支持.NET框架,微軟公司博采眾長(zhǎng),開發(fā)出一種具有java簡(jiǎn)潔性、C++語言靈活性、Pascal語言嚴(yán)謹(jǐn)?shù)恼Z言:C#,這是一個(gè)非常優(yōu)秀的語言。C#的誕生就是為了支持.NETFramework應(yīng)用程序開發(fā)平臺(tái)的,他們之間密不可分。熟練使用C#是作為一個(gè)在.NET平臺(tái)上的開發(fā)者必不可少的技能。.NET和C#語言之間是密不可分的,C#這門語言是伴隨著.NET的出現(xiàn)而誕生。用C#語言開發(fā)和編寫代碼時(shí),必不可少的需要使用.NETframework為其提供的框架集合類庫來進(jìn)行開發(fā)。C#并不是.NET框架唯一支持的語言,開發(fā)人員可以使用VisualBasic.NET或者其他一些支持.NET語言進(jìn)行開發(fā)。2.3VisualStudio簡(jiǎn)介Visual

Studio是微軟公司推出的開發(fā)環(huán)境,Visual

Studio可以用來創(chuàng)建Windows平臺(tái)下的Windows應(yīng)用程序和網(wǎng)絡(luò)應(yīng)用程序,也可以用來創(chuàng)建網(wǎng)絡(luò)服務(wù)、智能設(shè)備應(yīng)用程序和Office插件。Visual

Studio是目前最流行的Windows平臺(tái)應(yīng)用程序開發(fā)環(huán)境。VisualStudio2005是基于.NET2.0框架的。它同時(shí)也能開發(fā)跨平臺(tái)的應(yīng)用程序,如開發(fā)使用微軟操作系統(tǒng)的手機(jī)的程序等。總體來說是一個(gè)非常龐大的軟件,甚至包含代碼測(cè)試功能。這個(gè)版本的VisualStudio包含有眾多版本,分別面向不同的開發(fā)角色。同時(shí)還永久提供免費(fèi)的VisualStudioExpress版本。2.4SQLServer數(shù)據(jù)庫概述SQLServer是微軟公司的開發(fā)的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),該數(shù)據(jù)庫管理系統(tǒng)具有C/S體系結(jié)構(gòu)的特點(diǎn),跨操作系統(tǒng)平臺(tái),支持多核心處理,能夠很好的提供Web支持,支持XML可擴(kuò)展標(biāo)記語言,可以支持在因特網(wǎng)上查詢的能力。對(duì)不同的網(wǎng)絡(luò)協(xié)議也有很好的支持,IPX/SPX,TCP/IP等。該數(shù)據(jù)庫系統(tǒng)是微軟為企業(yè)平臺(tái)所設(shè)計(jì)的大型數(shù)據(jù)庫產(chǎn)品。SQLServer2008在Microsoft的數(shù)據(jù)平臺(tái)上發(fā)布,可以組織管理任何數(shù)據(jù)??梢詫⒔Y(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化文檔的數(shù)據(jù)直接存儲(chǔ)到數(shù)據(jù)庫中??梢詫?duì)數(shù)據(jù)進(jìn)行查詢、搜索、同步、報(bào)告和分析之類的操作。數(shù)據(jù)可以存儲(chǔ)在各種設(shè)備上,從數(shù)據(jù)中心最大的服務(wù)器一直到桌面計(jì)算機(jī)和移動(dòng)設(shè)備,它都可以控制數(shù)據(jù)而不用管數(shù)據(jù)存儲(chǔ)在哪里。SQLServer2008允許使用Microsoft.NET和VisualStudio開發(fā)的自定義應(yīng)用程序中使用數(shù)據(jù),在面向服務(wù)的架構(gòu)(SOA)和通過MicrosoftBizTalkServer進(jìn)行的業(yè)務(wù)流程中使用數(shù)據(jù)。信息工作人員可以通過日常使用的工具直接訪問數(shù)據(jù)。第三章系統(tǒng)的需求分析系統(tǒng)的需求分析包括可行性需求分析、性能需求分析和功能需求分析。分析的主要目的是確保開發(fā)出的系統(tǒng)真正滿足用戶實(shí)際需求。3.1可行性需求分析整個(gè)高校圖書信息管理系統(tǒng)的可行性分析主要包括以下幾個(gè)方面:(1)經(jīng)濟(jì)方面:作為一個(gè)高校,普遍財(cái)務(wù)收入幾千萬以上,開發(fā)一個(gè)圖書信息管理系統(tǒng)經(jīng)費(fèi)和實(shí)施整個(gè)平臺(tái)的費(fèi)用也不過是幾十萬之內(nèi),實(shí)施系統(tǒng)后整個(gè)高校的工作效率將得到顯著的提高,這有助于全校師學(xué)查閱資料,提高教育、教學(xué)科研水平。因此,開發(fā)圖書信息管理系統(tǒng),從經(jīng)濟(jì)角度是可行的。(2)技術(shù)方面:軟件方面,該平臺(tái)采用了目前新興的.NET和SQL2008的開發(fā)技術(shù)方案,選用功能強(qiáng)大的MicrosoftSQLServer2008作為數(shù)據(jù)庫,確保了平臺(tái)能夠處理大量數(shù)據(jù)。因此,整個(gè)圖書信息管理系統(tǒng)的軟件開發(fā)技術(shù)方案是成熟可行的。硬件方面,科技迅猛發(fā)展的今天,CPU運(yùn)算速度越來越快,硬盤和內(nèi)存容量越來越大,價(jià)格卻越來越低。因此,完成硬件上能夠滿足實(shí)施圖書信息管理系統(tǒng)的需要。(3)時(shí)機(jī)方面:各個(gè)高校已經(jīng)建立了千兆校園網(wǎng),學(xué)校所有辦公室、教學(xué)區(qū)、學(xué)生宿舍區(qū)都得到了覆蓋,家家戶戶實(shí)現(xiàn)了寬帶接入,這些良好的網(wǎng)絡(luò)環(huán)境為開發(fā)網(wǎng)絡(luò)教學(xué)平臺(tái)奠定了堅(jiān)實(shí)的基礎(chǔ)。(4)管理方面:各個(gè)高校都建立了各種管理規(guī)章制度,教學(xué)齊全,原始數(shù)據(jù)準(zhǔn)確可直接使用,這些都為網(wǎng)絡(luò)教學(xué)平臺(tái)開發(fā)提供了制度方面的保障。因此,圖書信息管理系統(tǒng)的開發(fā)無論從經(jīng)濟(jì)、技術(shù)、時(shí)機(jī),還是從管理方面都具備了開發(fā)條件,完全可行。3.2性能需求分析圖書信息管理系統(tǒng)在正常使用過程中總是需要處理大量的借閱者信息、書信息以及兩者相互作用產(chǎn)生的借書信息、還書信息和圖書查詢信息。因此整個(gè)管理系統(tǒng)在圖書館的管理工作中起著重要的作用,關(guān)系到整個(gè)圖書館的正常運(yùn)行。所以系統(tǒng)可靠性、可維護(hù)性要求較高:(1)系統(tǒng)要求穩(wěn)定、可靠:圖書信息管理系統(tǒng)是為全校師生提供優(yōu)質(zhì)服務(wù)的一個(gè)管理系統(tǒng),這就要求系統(tǒng)要穩(wěn)定、可靠地長(zhǎng)時(shí)間運(yùn)行。(2)系統(tǒng)延遲盡可能短:系統(tǒng)數(shù)據(jù)流量大,為了給用戶更加優(yōu)質(zhì)的服務(wù),要求系統(tǒng)反應(yīng)速度要快,避免大量借閱、歸還等用戶排隊(duì)等候。(3)系統(tǒng)信息要有安全:系統(tǒng)涉及到全校師生的各種信息,要求要有安全機(jī)制,確保整個(gè)系統(tǒng)的安全,防止非法入侵、篡改系統(tǒng)相關(guān)數(shù)據(jù),造成不必要的麻煩。(4)系統(tǒng)用戶界面要友好:整個(gè)系統(tǒng)涉及到圖書的查詢、借閱、歸還等多種功能,而大多高校的圖書管理人員文化程度相對(duì)偏低,這就要求系統(tǒng)設(shè)計(jì)過程中要特別注意界面要友好,使使用者能夠容易上手。3.3用戶需求分析3.3.1需求概述在過去沒有計(jì)算機(jī)的時(shí)代,高校都采用人工方式管理圖書,采用手工方式登記圖書的借閱和歸還情況。隨著信息科學(xué)技術(shù)的迅猛發(fā)展,各高校數(shù)字化校園建設(shè)已鋪開,圖書信息管理系統(tǒng)作為數(shù)字化校園的重要組成部分,迫切需要在追求整個(gè)校園數(shù)字化前,建立起一套功能完善的圖書信息管理系統(tǒng)來作鋪墊。(1)功能要完善,解決傳統(tǒng)管理方式不能完成的難題圖書傳統(tǒng)管理方式,具有許多不能完成的難題,如準(zhǔn)確的圖書借閱、歸還情況。這就要求整個(gè)圖書信息管理系統(tǒng)能夠解決這些問題。(2)操作要簡(jiǎn)便、工作流程盡量與傳統(tǒng)方式吻合。由于各個(gè)高校的圖書管理人員大多文化素質(zhì)要比教學(xué)人員低,他們習(xí)慣了傳統(tǒng)手工管理的工作流程,這就要求軟件設(shè)計(jì)過程中界面要簡(jiǎn)潔、業(yè)務(wù)流程盡量與傳統(tǒng)的人工管理模式類似,使圖書管理人員能夠很快適應(yīng)計(jì)算機(jī)來管理圖書。(3)維護(hù)簡(jiǎn)單。系統(tǒng)要求維護(hù)簡(jiǎn)單,使得在出現(xiàn)故障時(shí),能夠及時(shí)排錯(cuò),恢復(fù)正常使用。此外,應(yīng)向系統(tǒng)管理人員提交整個(gè)開發(fā)過程的各種文檔。3.3.2用例模型這里采用統(tǒng)一建模語言的方法即UML建模語言。適用于描述以用例為驅(qū)動(dòng),以體系結(jié)構(gòu)為中心的軟件設(shè)計(jì)的全過程。用例圖描述了一組用例、參與者以及他們之間的關(guān)系。用例圖是用來表達(dá)系統(tǒng)與外界間的一系列的交互,甚至系統(tǒng)還沒有構(gòu)建出來,就可以繪制用例圖。(1)系統(tǒng)整體用例圖首先從總體的角度觀察圖書管理系統(tǒng),給出整體的用例圖,如圖所示。這里體現(xiàn)了不同的角色,系統(tǒng)管理員、圖書管理員、讀者管理員和讀者。描述了他們各自的分工情況和用例之間的關(guān)系。圖系統(tǒng)管理用例圖圖圖書管理用例圖圖讀者管理用例圖圖讀者用例圖3.4系統(tǒng)非功能性需求除了上述功能性需求,要使系統(tǒng)在日常的工作情況下正常維持,要保證系統(tǒng)的完整性和交互性就必須有一些非功能性需求。3.4.1可用性MTTF,即系統(tǒng)平均無故障時(shí)間,該參數(shù)是用來指示計(jì)算機(jī)系統(tǒng)的可靠性。就是計(jì)算機(jī)在發(fā)生兩次故障之間所用的時(shí)間的平均值。換種說法就是平均需要多久才發(fā)生故障。按照這種說話,MTTF越大系統(tǒng)無故障時(shí)間越長(zhǎng),就越可靠。MTTR,系統(tǒng)平均維修時(shí)間,維護(hù)系統(tǒng)從故障到恢復(fù)正常使用這段時(shí)間的平均值。維護(hù)性就是通過他來進(jìn)行度量的,系統(tǒng)的可維護(hù)性MTTR成反比。由以上的結(jié)果可以推論出公式:MTTF/(MTTF+MTTR)*100%。所以,可用性即為系統(tǒng)保持正常時(shí)間所占的比例。3.4.2可維護(hù)性對(duì)軟件系統(tǒng)的改正、理解、改進(jìn)、改動(dòng)的難易程度即為可維護(hù)性??衫斫庑院托薷男栽谲浖S護(hù)性上有重要的作用。就本系統(tǒng)來說,系統(tǒng)的正常運(yùn)行通過管理員的維護(hù)來實(shí)現(xiàn)。而且,對(duì)系統(tǒng)需求變化的做出快速的調(diào)整和改變。3.4.3可擴(kuò)展性在適當(dāng)?shù)牡胤讲迦氡M可能多的代碼即為系統(tǒng)的可擴(kuò)展性。其目的是為了應(yīng)付未來應(yīng)用需求發(fā)生的改變從而對(duì)項(xiàng)目做出的修改,以減少代碼的修改量。系統(tǒng)的可擴(kuò)展性是通過軟件的框架來實(shí)現(xiàn)的??梢杂腥缦路椒ǎ簞?dòng)態(tài)加載、回調(diào)函數(shù)、頂端抽象接口和使用可塑性很強(qiáng)的代碼結(jié)構(gòu)。3.4.4容錯(cuò)性容錯(cuò)性是指從錯(cuò)誤中恢復(fù)的能力,這種錯(cuò)誤是軟件或者硬件在運(yùn)行時(shí)產(chǎn)生的。一般來說系統(tǒng)的容錯(cuò)性可以用過可靠性、可測(cè)行和可用性三個(gè)指標(biāo)來衡量。就具體的本項(xiàng)目而言,由于某些特殊的原因服務(wù)器出現(xiàn)問題時(shí)候,卻不影響本系統(tǒng)的正常運(yùn)行即為好的容錯(cuò)性,容錯(cuò)的提高可以通過服務(wù)器的部署來得到實(shí)現(xiàn)。第四章系統(tǒng)設(shè)計(jì)4.1總體設(shè)計(jì)眾所周知,圖書管理系統(tǒng)對(duì)圖書館來說有著舉足輕重的作用,它不但方便了讀者的檢索,是否在館、以及借閱和續(xù)借等。也極大方便了圖書館和圖書管理者對(duì)圖書的管理。鑒于上述功能。因此,對(duì)于一個(gè)好的圖書館里系統(tǒng)以下幾個(gè)功能就必不可少。4.1.1系統(tǒng)角色設(shè)計(jì)管理員系統(tǒng)分為系統(tǒng)管理員、圖書管理員、讀者管理員(1)系統(tǒng)管理員:主要負(fù)責(zé)系統(tǒng)中用戶信息的維護(hù)和數(shù)據(jù)庫的備份歡迎,保證系統(tǒng)的正常運(yùn)行。(2)圖書管理員:主要功能對(duì)系統(tǒng)中借閱信息,圖書信息,讀者信息,數(shù)據(jù)進(jìn)行統(tǒng)計(jì)以及個(gè)人資料的維護(hù)。借閱信息:讀者借書,讀者還書,讀者續(xù)借,查詢讀者借閱信息。讀者借書:根據(jù)讀者編號(hào)檢索讀者類型和已經(jīng)借閱圖書相應(yīng)信息。讀者還書:根據(jù)讀者編號(hào)檢索提取讀者信息,加載借閱圖書信息列表選擇要?dú)w還的圖書信息進(jìn)行歸還操作。讀者續(xù)借:若讀者在固定時(shí)間內(nèi)沒有讀完某本圖書,可以進(jìn)行續(xù)借操作。借閱查詢:可以對(duì)借閱信息就行統(tǒng)計(jì)查詢。圖書管理:查詢圖書信息并維護(hù)圖書信息。讀者管理:查詢讀者信息;添加讀者;維護(hù)讀者類別;數(shù)據(jù)統(tǒng)計(jì);維護(hù)個(gè)人資料。讀者管理員:維護(hù)圖書信息、讀者信息和個(gè)人信息等。讀者可以查詢圖書信息,以及自己借閱圖書信息。維護(hù)個(gè)人信息。4.1.2功能模塊總體設(shè)計(jì)由于圖書館里系統(tǒng)的總體和各個(gè)功能板塊的需要,現(xiàn)將圖書管理系統(tǒng)做如下具體設(shè)計(jì),以使該管理系統(tǒng)能夠正常運(yùn)行。根據(jù)系統(tǒng)的需求分析,系統(tǒng)的總體功能模塊設(shè)計(jì)如下圖:圖系統(tǒng)功能模塊數(shù)據(jù)流圖是結(jié)構(gòu)化分析方法中使用的工具,它以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過程,它將數(shù)據(jù)獨(dú)立抽象出來,通過圖形方式描述信息的實(shí)際流程。數(shù)據(jù)流程圖由系統(tǒng)的外部實(shí)體、數(shù)據(jù)處理、數(shù)據(jù)存儲(chǔ)和系統(tǒng)中的數(shù)據(jù)流四個(gè)部分組成。為了更加清晰的獲取圖書管理系統(tǒng)內(nèi)部業(yè)務(wù)流程以及數(shù)據(jù)流交互情況,下面通過結(jié)構(gòu)化分析方法,獲取圖書管理系統(tǒng)的數(shù)據(jù)流圖。圖頂層數(shù)據(jù)流圖類圖是最常用的UML圖,顯示出類、接口以及它們之間的靜態(tài)結(jié)構(gòu)和關(guān)系;它用于描述系統(tǒng)的結(jié)構(gòu)化設(shè)計(jì)。本系統(tǒng)中一共用到了幾個(gè)基本的數(shù)據(jù)類,具體類圖如下圖:圖系統(tǒng)的基本類圖4.2詳細(xì)設(shè)計(jì)4.2.1用戶登錄模塊用戶登錄板塊是圖書管理系統(tǒng)的重要組成部分,它既是用戶進(jìn)入圖書管理系統(tǒng)的端口或憑證,也是圖書管理系統(tǒng)的重要安全保證。功能模塊圖如下:圖管理員登陸模塊功能圖其主要功能分別分為:帳號(hào)管理,用戶密碼的輸入。只有當(dāng)用戶名和密碼相匹配時(shí)才能夠進(jìn)入圖書管理系統(tǒng)經(jīng)行帳號(hào)的管理如密碼的修改等或圖書的管理如預(yù)訂、預(yù)借等。但當(dāng)帳號(hào)和密碼不相匹配時(shí),系統(tǒng)將自動(dòng)彈出錯(cuò)誤提醒,并拒絕用戶進(jìn)入該管理系統(tǒng)用戶登錄時(shí)的身份認(rèn)證及處理過程:圖用戶登錄時(shí)序圖打開登錄頁面。輸入帳號(hào)和密碼。系統(tǒng)檢查帳號(hào)和密碼,看是否相匹配。如果帳號(hào)或密碼不相匹配,則彈出錯(cuò)誤提醒,點(diǎn)擊后并返回登陸頁面保留帳號(hào),但要重新輸入密碼。如果帳號(hào)和密碼相匹配,則根據(jù)用戶的權(quán)限類別進(jìn)入相應(yīng)的系統(tǒng)登錄。進(jìn)入圖書管理系統(tǒng)主頁。4.2.2系統(tǒng)管理模塊系統(tǒng)管理模塊主要實(shí)現(xiàn)不同權(quán)限的圖書管理系統(tǒng)操作人員設(shè)置不同的模塊和使用范圍,也可以實(shí)現(xiàn)管理員的添加、修改以及刪除等。系統(tǒng)管理模塊圖如下圖所示:圖系統(tǒng)管理模塊1、添加新管理員輸入管理員賬號(hào)、密碼,對(duì)管理權(quán)限類別的識(shí)別相應(yīng)管理權(quán)限的取得在數(shù)據(jù)庫中添加新的管理員2、管理員權(quán)限的設(shè)置登錄有該權(quán)限的管理員選擇所需要設(shè)置權(quán)限的用戶權(quán)限類別的獲取和修改,確認(rèn)信息完成對(duì)數(shù)據(jù)庫中管理員及權(quán)限的更新3、刪除指定管理員登錄具有該權(quán)限的管理員選擇需要?jiǎng)h除的管理員并執(zhí)行刪除操作完成對(duì)數(shù)據(jù)庫中管理員及權(quán)限的更新4.2.3圖書管理模塊圖書管理模塊主要實(shí)現(xiàn)的是對(duì)圖書信息的管理功能,它應(yīng)該具備圖書信息的查詢、添加、修改、刪除等,此外還應(yīng)該具有對(duì)圖書的分類管理功能。1、圖書類別設(shè)置模塊處理過程:讀取并顯示圖書類別信息表中的己有信息圖書類別信息的添加、修改、刪除等圖書類別信息表的更新并提示2、圖書信息管理模塊處理過程:從圖書信息表中讀取已有的信息并顯示添加新的圖書記錄或修改已有記錄或刪除指定圖書記錄更新圖書信息表,并提示用戶圖圖書管理模塊功能圖其操作流程圖如圖所示:圖管理員圖書管理操作流程圖4.2.4讀者管理模塊讀者信息維護(hù)模塊主要負(fù)責(zé)讀者類別的設(shè)置,包括類型、可借冊(cè)書等信息。讀者信息的建立及維護(hù),包括了讀者信息的新建、編輯、刪除。讀者管理模塊圖如下圖所示:圖讀者管理模塊圖讀者類別管理模塊的處理過程:讀取并顯示讀者類別信息表中的信息;新的類別的添加、修改、刪除以及更新;讀者類別信息表的更新和提醒。讀者信息管理模塊處理過程:讀取并顯示讀者信息表中的信息;當(dāng)管理員或讀者輸入讀者編號(hào)時(shí),會(huì)顯示其詳細(xì)信息;圖書管理員可以添加新的讀者信息、以及對(duì)已有讀者信息的修改或刪除;讀者信息表的更行及提醒。4.2.5圖書借閱管理模塊圖書借閱管理模塊主要負(fù)責(zé)圖書的借閱、續(xù)借以及圖書的歸還等。借閱管理模塊操作流程圖如圖所示:圖借閱管理操作流程圖1、圖書借閱模塊處理過程:掃描或輸入讀者編號(hào),對(duì)讀者的類型進(jìn)行識(shí)別看是否達(dá)到借書上限,并顯示所借書籍情況以及相關(guān)信息若未達(dá)到則掃描輸入所借圖書編號(hào)或條形碼,并自動(dòng)生成更新該用戶的相關(guān)借閱信息2、圖書的續(xù)借:掃描或輸入讀者編號(hào),對(duì)讀者的類型經(jīng)行識(shí)別并顯示相關(guān)信息對(duì)所續(xù)借的書籍經(jīng)行掃描輸入,并自動(dòng)生成更新用戶的相關(guān)借閱信息3、圖書歸還模塊處理過程:輸入讀者的編號(hào)或條形碼,顯示該讀者所借圖書信息在所借圖書書目中、選擇或者掃描讀者還書條目查看所借書的時(shí)間,判斷是否超期,若未過期,則完成還書過程若逾期,則自動(dòng)彈出過期窗口,按逾期處理4.2.6查詢圖書信息模塊讀者查詢書刊信息的時(shí)序圖,具體如下圖所示:圖查詢圖書時(shí)序圖4.3數(shù)據(jù)庫設(shè)計(jì)在目前的數(shù)據(jù)庫管理系統(tǒng)中有層次模型、網(wǎng)狀模型、關(guān)系模型三種數(shù)據(jù)模型。其中,關(guān)系模型具有較高的數(shù)據(jù)獨(dú)立性,使用也較為方便,因而數(shù)據(jù)庫設(shè)計(jì)的核心問題就是根據(jù)系統(tǒng)數(shù)據(jù)模式對(duì)系統(tǒng)主要數(shù)據(jù)實(shí)體關(guān)系進(jìn)行設(shè)計(jì)。本文采用SQLServer2008關(guān)系數(shù)據(jù)庫,利用該數(shù)據(jù)庫對(duì)圖書管理信息進(jìn)行增、刪、編輯、統(tǒng)計(jì)、顯示等功能操作,對(duì)數(shù)據(jù)快速定位、查詢提供了有利條件。4.3.1概念結(jié)構(gòu)設(shè)計(jì)通過對(duì)本系統(tǒng)的做出的需求分析工作、系統(tǒng)流程設(shè)計(jì)工作等及系統(tǒng)功能結(jié)構(gòu)的確定,得到最終數(shù)據(jù)庫實(shí)體對(duì)象。整個(gè)圖書管理系統(tǒng)的關(guān)系圖,包括管理員、借閱者、書籍等等。整個(gè)圖書管理系統(tǒng)的關(guān)系圖,包括管理員、借閱者、書籍等等。具體關(guān)系如圖:圖總體E-R圖系統(tǒng)給不同的用戶劃分不同的管理權(quán)限,不同的權(quán)限對(duì)管理系統(tǒng)的操作又各不相同。圖書借閱信息實(shí)體,存儲(chǔ)著圖書的所有信息,包括讀者信息、讀者條形碼、應(yīng)還日期、借閱日期、圖書名稱、圖書條形碼等??梢詼?zhǔn)確的記錄著每本書的借閱情況。為了實(shí)現(xiàn)對(duì)圖書的分類,一般是將不同的書進(jìn)行歸類,相同類型的書歸為一類,放在對(duì)應(yīng)的書架上。書架信息被存儲(chǔ)在書架實(shí)體信息中。每本書都有自己的圖書信息,包括圖書價(jià)格、作者名稱、出版社名稱、書架類型、圖書類型、圖書類型、圖書名稱、圖書條形碼、借閱此書、圖書價(jià)格等。為了方便對(duì)圖書進(jìn)行查詢和分類。設(shè)計(jì)了圖書信息實(shí)體,將這些信息保存在實(shí)體中。4.3.2邏輯結(jié)構(gòu)設(shè)計(jì)在設(shè)計(jì)完數(shù)據(jù)庫實(shí)體E-R圖之后,需要根據(jù)實(shí)體E-R圖設(shè)計(jì)數(shù)據(jù)表結(jié)構(gòu)。下面給出主要數(shù)據(jù)表的數(shù)據(jù)結(jié)構(gòu)和用途。本系統(tǒng)使用的數(shù)據(jù)庫管理系統(tǒng)為SQLServer2008。數(shù)據(jù)庫中的表有圖書信息表、圖書類型信息表、圖書借閱表、讀者信息表、讀者類型信息表、管理員信息表。(1)圖書信息表,表名Book,如下表所示:表1圖書信息表序號(hào)列名數(shù)據(jù)類型長(zhǎng)度主鍵允許空描述1bkIDint10是否圖書ID2bkCodevarchar50否是圖書編號(hào)3bkNamevarchar50否是圖書名稱4bkAuthorvarchar50否是作者5bkPressvarchar50否是出版社6bkDatePressSmalldatetime否是出版日期7bkISBNvarchar50否是圖書書號(hào)8bkCatalogvarchar50否是圖書分類9bkLanguagevarchar50否是圖書語種10bkPageint10否是頁碼11bkPricemoney否是定價(jià)12bkDateInsmalldatetime否是入館時(shí)間13bkBrieftext否是圖書簡(jiǎn)評(píng)14bkIsLabvarchar50否是是否在館圖書類型信息表,表名BookType,如下表所示:表2圖書類型信息表序號(hào)列名數(shù)據(jù)類型長(zhǎng)度主鍵允許空描述1bkTypeIDint10是否圖書類型ID2bkCatalogvarchar50否是圖書分類圖書借閱表,表名Borrow,如下表所示:表3圖書借閱表序號(hào)列名數(shù)據(jù)類型長(zhǎng)度主鍵允許空描述1ldIDint10是否借閱編號(hào)2rdIDvarchar50否是讀者編號(hào)3bkIDint10否是圖書ID4ldContinueTimesint10否是借閱次數(shù)5ldDateOutsmalldatetime否是借出時(shí)間6ldDateRetPlansmalldatetime否是應(yīng)還時(shí)間7ldDateRetActsmalldatetime否是歸還時(shí)間8ldOverDayint10否是超時(shí)天數(shù)9ldOverMoneymoney否是超時(shí)費(fèi)用10ldPunishMoneymoney否是罰金11isHasReturnvarchar50否是是否返還12operatorLendvarchar50否是借出操作者13operatorRetvarchar50否是返還操作者讀者信息表,表名Reader,如下表所示:表4讀者信息表序號(hào)列名數(shù)據(jù)類型長(zhǎng)度主鍵允許空描述1rdIDvarchar50是否讀者編號(hào)2rdNamevarchar50否是姓名3rdPwdvarchar50否是密碼4rdSexvarchar50否是性別5rdTypeint10否是讀者類型6rdDeptvarchar50否是學(xué)院7rdPhonevarchar50否是手機(jī)號(hào)8rdEmailvarchar50否是郵箱9rdDateRegsmalldatetime否是注冊(cè)時(shí)間10rdBorrowQtyint10否是借閱數(shù)量讀者類型信息表,表名ReaderType,如下表所示:表5讀者類型信息表序號(hào)列名數(shù)據(jù)類型長(zhǎng)度主鍵允許空描述1rdTypeint10是否圖書類型ID2rdTypeNamevarchar50否是讀者類型3canLendQtyint10否是借閱最多數(shù)量4canLendDayint10否是借閱最多天數(shù)5canContinueTimesint10否是持續(xù)次數(shù)6punishRatefloat否是罰款率7dateValidsmallint否是有效時(shí)間管理員信息表,表名Users,如下表所示:表6管理員信息表序號(hào)列名數(shù)據(jù)類型長(zhǎng)度主鍵允許空描述1uIDvarchar50是否管理員ID2uNamevarchar50否是管理員名稱3uPwdvarchar50否是密碼4uRoleint10否是管理員權(quán)限第五章系統(tǒng)主要功能的實(shí)現(xiàn)5.1用戶登錄模塊用戶登錄頁面,用于完成讀者、系統(tǒng)管理員等用戶登錄圖書管理系統(tǒng)的驗(yàn)證功能。用戶可以在圖中所示的登錄欄輸入帳號(hào)、密碼后登錄。圖用戶登錄流程圖打開首頁,即登錄頁,系統(tǒng)登錄流程如圖所示,需要用戶輸入的信息在登錄頁面下方給予了相應(yīng)提示。圖用戶登錄頁面“登錄”按鈕單擊事件主要代碼如下:privatevoidbtnLogin_Click(objectsender,EventArgse){if(tbUserID.Text==""||tbUserPwd.Text==""){MessageBox.Show("賬號(hào)密碼不能為空!","消息",MessageBoxButtons.OK,MessageBoxIcon.Information);return;}if(rBtnReader.Checked){DAL.ReaderDalrd=newLibrary.DAL.ReaderDal();if(!rd.IsExists(tbUserID.Text,tbUserPwd.Text)){MessageBox.Show("密碼有誤!","消息",MessageBoxButtons.OK,MessageBoxIcon.Information);return;}5.2查詢圖書模塊圖書信息查詢:填寫或設(shè)定圖書序號(hào)、圖書編號(hào)、圖書名稱、圖書作者、出版社名、圖書簡(jiǎn)介、語言、類別、入館時(shí)間等條件后,單擊“查詢”按鈕查詢出符合條件的圖書,圖書信息查詢功能流程圖如圖所示:圖圖書檢索功能流程圖功能實(shí)現(xiàn)過程:圖書信息查詢操作權(quán)限面向系統(tǒng)全部用戶,支持簡(jiǎn)單檢索、全文檢索、多字段檢索三種方式。用戶輸入查詢字段,選擇檢索方式后,點(diǎn)擊檢索按鈕則由調(diào)度檢索處理程序,根據(jù)用戶輸入的檢索字段訪問圖書信息數(shù)據(jù)表,并將檢索結(jié)果返回客戶端,根據(jù)圖書檢索結(jié)果分頁顯示滿足檢索條件的圖書相信信息。圖書查詢頁面:圖書查詢頁面用于讀者查詢書籍信息。圖圖書查詢頁面當(dāng)用戶選定檢索方式后,需要根據(jù)檢索條件輸入相應(yīng)查詢字段信息。單擊“檢索”按鈕時(shí),為保證用戶在查詢結(jié)果分頁時(shí),自動(dòng)調(diào)用上一次查詢字段。查詢字段的處理程序可以獨(dú)立編寫,在本系統(tǒng)中,許多模塊需要調(diào)用圖書信息查詢處理程序,如借閱查詢、還書查詢、圖書查詢等,其模塊實(shí)現(xiàn)過程類似,所不同的是查詢條件的獲取。查詢結(jié)果頁面用于顯示根據(jù)傳遞過來的參數(shù)查詢出的數(shù)據(jù),將查詢到的結(jié)果放在相應(yīng)的控件中顯示。在具體的代碼實(shí)現(xiàn)時(shí)主要利用該sql語句進(jìn)行查詢,或者將上述過程編譯成存儲(chǔ)過程,圖書信息檢索按鈕關(guān)鍵代碼如下:privatevoidtsbtnQuery_Click(objectsender,EventArgse){BLL.BorrowBllbb=newLibrary.BLL.BorrowBll();if(tsccbTiao.Text==""){bb.BindOneReaderBorrow(readerId,dgvMain);}if(tsccbTiao.Text=="圖書名稱"){stringsqlStr="selectldIDas借書編號(hào),bk.bkIDAS圖書序號(hào),bkNameAS圖書名稱,ldContinueTimesas續(xù)借次數(shù),ldDateOutas借出時(shí)間,ldDateRetPlanas應(yīng)還時(shí)間,ldOverDayas超期時(shí)間,isHasReturnas是否歸還fromBorrowbr,Bookbkwherebk.bkID=br.bkIDandrdID='"+readerId+"'andbk.bkNamelike'%"+tstbKey.Text+"%'";bb.BindReaderBorrow(sqlStr,dgvMain);}if(tsccbTiao.Text=="圖書作者"){stringsqlStr="selectldIDas借書編號(hào),bk.bkIDAS圖書序號(hào),bkNameAS圖書名稱,ldContinueTimesas續(xù)借次數(shù),ldDateOutas借出時(shí)間,ldDateRetPlanas應(yīng)還時(shí)間,ldOverDayas超期時(shí)間,isHasReturnas是否歸還fromBorrowbr,Bookbkwherebk.bkID=br.bkIDandrdID='"+readerId+"'andbk.bkAuthorlike'%"+tstbKey.Text+"%'";bb.BindReaderBorrow(sqlStr,dgvMain);}if(tsccbTiao.Text=="圖書分類"){stringsqlStr="selectldIDas借書編號(hào),bk.bkIDAS圖書序號(hào),bkNameAS圖書名稱,ldContinueTimesas續(xù)借次數(shù),ldDateOutas借出時(shí)間,ldDateRetPlanas應(yīng)還時(shí)間,ldOverDayas超期時(shí)間,isHasReturnas是否歸還fromBorrowbr,Bookbkwherebk.bkID=br.bkIDandrdID='"+readerId+"'andbk.bkCataloglike'%"+tstbKey.Text+"%'";bb.BindReaderBorrow(sqlStr,dgvMain);}if(tsccbTiao.Text=="出版社名"){stringsqlStr="selectldIDas借書編號(hào),bk.bkIDAS圖書序號(hào),bkNameAS圖書名稱,ldContinueTimesas續(xù)借次數(shù),ldDateOutas借出時(shí)間,ldDateRetPlanas應(yīng)還時(shí)間,ldOverDayas超期時(shí)間,isHasReturnas是否歸還fromBorrowbr,Bookbkwherebk.bkID=br.bkIDandrdID='"+readerId+"'andbk.bkPresslike'%"+tstbKey.Text+"%'";bb.BindReaderBorrow(sqlStr,dgvMain);}}5.3讀者管理模塊添加讀者信息:?jiǎn)螕籼砑幼x者,出現(xiàn)“讀者管理”頁面,如下圖所示,可以對(duì)讀者編號(hào)、讀者性別、讀者類型、姓名、讀者電話、讀者單位、已借、讀者郵箱、登記時(shí)期等進(jìn)行編輯。添加后即可登錄使用,此功能用于讀者管理員添加讀者。圖添加讀者頁面在該頁面中,將讀者操作權(quán)限從數(shù)據(jù)庫中取出,并根據(jù)讀者類別將相應(yīng)的權(quán)限賦予讀者。添加讀者頁面需要判斷輸入信息是否完整,新增讀者是否已經(jīng)存在,然后將滿足上述約定要求的讀者信息“添加”到讀者信息表中。“添加”按鈕單擊事件參考代碼如下:privatevoidtsbtnSave_Click(objectsender,EventArgse){if(tbUserID.Text!=""&&tbUserName.Text!=""&&tbUserPwd.Text!=""){introle=0;intstate=0;role=cbbUserRole.SelectedIndex+1;state=cbbUserState.SelectedIndex;if(OpType=="Add"){Model.Usersus=newLibrary.Model.Users();us.uID=tbUserID.Text;us.uName=tbUserName.Text;us.uPwd=tbUserPwd.Text;us.uRole=role;us.uState=state;if(newDAL.UserDal().InsertUser(us)){MessageBox.Show("添加成功!","消息",MessageBoxButtons.OK,MessageBoxIcon.Information);BindUserList();}tbUserID.Enabled=false;tbUserID.ReadOnly=true;tsbtnSave.Enabled=false;OpType="";}5.4圖書管理模塊圖書添加:?jiǎn)螕簟皥D書管理”/“添加圖書”菜單,出現(xiàn)“添加圖書”頁面。然后錄入數(shù)據(jù),圖書添加的流程及實(shí)現(xiàn)方法同讀者用戶添加代碼相似,其程序流程如圖所示。圖圖書添加流程圖圖書管理員錄入圖書信息,點(diǎn)擊添加按鈕之后,彈出“圖書添加成功”提示框,如下圖所示:該模塊實(shí)現(xiàn)的主要程序代碼如下:privatevoidbtnAdd_Click(objectsender,EventArgse){for(inti=0;i<panel1.Controls.Count;i++){if(panel1.Controls[i].GetType().ToString()=="System.Windows.Forms.TextBox"){if(((TextBox)panel1.Controls[i]).Name!="tbBrief"){if(((TextBox)panel1.Controls[i]).Text==""){MessageBox.Show("除了簡(jiǎn)介與封面外\n所有信息必須完整","消息",MessageBoxButtons.OK,MessageBoxIcon.Information);return;}}}}if(ValidateInPut()){Model.Bookbk=newLibrary.Model.Book();bk.bkID=0;bk.bkCode=tbBookCode.Text;bk.bkName=tbBookName.Text;bk.bkAuthor=tbBookAuthor.Text;bk.bkCatalog=cbbTypeName.Text;bk.bkLanguage=cbbLanguage.Text;bk.bkDatePress=dtpDatePress.Value;bk.bkDateIn=dtpDateIn.Value;bk.bkPress=tbPressName.Text;bk.bkPage=Convert.ToInt32(tbPages.Text);bk.bkPrice=(float)Convert.ToDouble(tbPrice.Text);bk.bkBrief=tbBrief.Text;bk.bkConver=null;bk.bkISBN=tbISBN.Text;bk.bkIsLab=true;if(bd.InsertBooks(bk,Convert.ToInt32(tbStartNumber.Text),Convert.ToInt32(tbCount.Text))){MessageBox.Show("圖書添加成功!","消息",MessageBoxButtons.OK,MessageBoxIcon.Information);return;}else{MessageBox.Show("圖書添加失敗!","消息",MessageBoxButtons.OK,MessageBoxIcon.Information);return;}}}5.5借閱管理模塊圖書借閱是圖書管理系統(tǒng)實(shí)現(xiàn)的重點(diǎn)和難點(diǎn)。圖書借閱模塊需要對(duì)圖書在館內(nèi)的狀態(tài)進(jìn)行跟蹤,其主要狀態(tài)模式分別為增加圖書、在庫圖書、刪除圖書、圖書外借、圖書預(yù)定五類狀態(tài)。圖書管理人員輸入圖書信息為圖書添加狀態(tài),處于在庫圖書狀態(tài)則能夠被讀者外借。圖書外借歸還后該書也轉(zhuǎn)為在庫書籍狀態(tài),上述狀態(tài)轉(zhuǎn)換如圖:圖圖書狀態(tài)轉(zhuǎn)換圖借書和還書操作是本系統(tǒng)最重要的兩個(gè)功能,此操作要求讀者必須將書帶出圖書室或還回到圖書室,這樣才能保證圖書和系統(tǒng)信息的同步。單擊“借閱管理”/“借閱查詢”菜單,出現(xiàn)“借閱查詢”頁面,輸入讀者信息,點(diǎn)擊查詢即可得到借閱歷史,借閱查詢結(jié)果頁面如下圖所示:圖借閱查詢界面讀者還書操作界面:圖讀者還書界面查詢借閱模塊實(shí)現(xiàn)主要代碼:privatevoidbtnSearchReader_Click(objectsender,EventArgse){if(tbReaderID.Text!=""){Model.Readerrd=newLibrary.Model.Reader();rd=newDAL.ReaderDal().GetReaderById(tbReaderID.Text);if(rd!=null){tbReaderName.Text=rd.rdName;tbReaderType.Text=rd.rdType.ToString();tbReaderDept.Text=rd.rdDept;tbHasLendQty.Text=rd.rdBorrowQty.ToString();;DAL.ReaderTypeDalrtd=newLibrary.DAL.ReaderTypeDal();Model.ReaderTypert=rtd.GetReaderTypeByReaderId(tbReaderID.Text);if(rt!=null){tbCanLendDay.Text=rt.canLendDay.ToString();tbCanLendQty.Text=rt.canLendQty.ToString();stringsqlStr="selectldIDas借書編號(hào),bk.bkIDAS圖書序號(hào),bkNameAS圖書名稱,ldContinueTimesas續(xù)借次數(shù),ldDateOutas借出時(shí)間,ldDateRetPlanas應(yīng)還時(shí)間,ldOverDayas超期時(shí)間,isHasReturnas是否歸還fromBorrowbr,Bookbkwherebk.bkID=br.bkIDandrdID='"+tbReaderID.Text+"'andbr.isHasReturn='否'";newBLL.BorrowBll().BindReaderBorrow(sqlStr,dgvOne);rdId=tbReaderID.Text;}}else{MessageBox.Show("不存在此讀者!","消息",MessageBoxButtons.OK,MessageBoxIcon.Information);}}}讀者還書模塊主要代碼實(shí)現(xiàn):privatevoidbtnOK_Click(objectsender,EventArgse){try{if(dgvOne.SelectedRows.Count>0){if(newDAL.BorrowDal().ReturnBook(Convert.ToInt32(dgvOne.SelectedRows[0].Cells[0].Value),(tbPunis

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論