版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 圖書館借閱管理系統(tǒng)</b></p><p><b> 摘 要</b></p><p> 圖書館人員結構復雜,人員數(shù)量有限,涉及方面很廣,如果還是用手工操作處理圖書借閱問題,工作將非常繁瑣,需要大量的人力、物力和財力,極大的浪費了資源。</p><p> 圖書管理系統(tǒng)是學校管理機制中的
2、重要組成部分,通過對圖書管理系統(tǒng)的運行管理機制進行調(diào)查研究,開發(fā)了此圖書系統(tǒng)。本系統(tǒng)中解決了學校圖書管理事務中的常用基本問題以及相關統(tǒng)計工作。本系統(tǒng)中包含6個功能模塊:系統(tǒng)設置,讀者管理,圖書管理,圖書借還,系統(tǒng)查詢和更改口令。</p><p> 本系統(tǒng)使有jsp進行網(wǎng)頁界面的設計,使用MVC設計模式,采用了開源框架Struts,它采用了當今軟件設計的最新技術,具有開發(fā)效率高、設計靈活、生成的軟件界面友好美觀等
3、特點。本系統(tǒng)中通過JDBC驅動和數(shù)據(jù)庫進行無縫連接,后端的數(shù)據(jù)庫是mysql,也是一個開源的數(shù)據(jù)庫系統(tǒng),該數(shù)據(jù)庫具有較高的完整性,一致性和安全性。</p><p> 關鍵詞:圖書管理;信息管理;jsp;struts</p><p><b> Abstract </b></p><p> Library personnel structur
4、e is complex, involving a limited number of personnel, the wide aspect, if still use manual processing to borrow books, the job will be very cumbersome, requires a large amount of manpower, material and financial resourc
5、es, great waste of resources.</p><p> The management system of the library takes an important role in the administration of school organization. I desigen the system after the thorough investigations about
6、the library management system’s mechanism. This system contains with reader informantion management model, book information management model, books borrowing and returning including system information query and password
7、 setting.</p><p> The system is contrived with Java Server Pages Techonolege as well as Struts,the software design mode of MVC with open source framework techonolege, which makes this system have the advant
8、ages of efficiently designed with beauteous and friendly interface . This system use jdbc driver to connect the mysql database server,which is also an open source database system for its users. The batabase was desigend
9、with highly integrity, security, and consistency.</p><p> Key words: book management, management of information ,jsp,struts</p><p><b> 目 錄</b></p><p> 1. 緒 論1<
10、/p><p> 1.1畢業(yè)設計主要任務1</p><p> 1.2目前圖書管理系統(tǒng)存在的問題1</p><p><b> 1.3課題意義1</b></p><p> 1.4論文的工作和安排2</p><p> 2.圖書借閱管理需求分析3</p><p>
11、2.1 可行性分析3</p><p> 2.1.1.技術可行性3</p><p> 2.1.2.經(jīng)濟可行性3</p><p> 2.2 圖書借閱管理系統(tǒng)需求概述3</p><p> 2.2.1系統(tǒng)目標3</p><p> 2.2.2用戶類和用戶特性4</p><p> 2
12、.3 圖書借閱管理系統(tǒng)需求模型4</p><p> 2.3.1功能描述4</p><p> 2.3.2圖書管理員詳細功能描述5</p><p> 2.3.3讀者詳細功能描述5</p><p> 2.3.4主要用例的用例描述6</p><p><b> 3.總體設計9</b>&
13、lt;/p><p> 3.1 數(shù)據(jù)庫設計9</p><p> 3.1.1數(shù)據(jù)庫設計概述9</p><p> 3.1.2圖書信息表結構設計10</p><p> 3.1.3圖書類型信息表結構設計11</p><p> 3.1.4 讀者信息表結構設計11</p><p> 3.1.
14、5讀者類型信息表結構設計12</p><p> 3.1.6圖書借閱信息表結構設計12</p><p> 3.1.7圖書歸還信息表結構設計13</p><p> 3.1.8用戶信息表結構設計13</p><p> 3.1.9圖書館信息表結構設計14</p><p> 3.1.10辦證參數(shù)信息表結構設計
15、14</p><p> 3.2 系統(tǒng)總體結構設計15</p><p> 3.2.1圖書管理系統(tǒng)總體結構圖15</p><p> 3.2.2 系統(tǒng)管理員模塊功能15</p><p> 3.2.3 讀者管理模塊功能16</p><p> 3.2.4 圖書管理模塊功能16</p><
16、p> 3.2.5 圖書借還模塊功能17</p><p> 3.2.6 系統(tǒng)查詢模塊功能18</p><p> 4.程序設計與編碼20</p><p> 4.1開發(fā)平臺與工具20</p><p> 4.1.1 J2EE平臺20</p><p> 4.1.2 WEB服務器和數(shù)據(jù)庫20</
17、p><p> 4.2程序設計21</p><p> 4.2.1程序設計概述21</p><p> 4.2.2數(shù)據(jù)庫與Web服務器的連接21</p><p> 4.2.3登錄模塊程序設計23</p><p> 4.2.4系統(tǒng)管理員功能模塊的實現(xiàn)25</p><p> 4.2.5讀
18、者管理功能模塊的實現(xiàn)26</p><p> 4.2.6查詢功能模塊的實現(xiàn)27</p><p> 4.2.7圖書管理功能模塊的實現(xiàn)29</p><p> 4.2.8圖書借還功能模塊的實現(xiàn)30</p><p><b> 5.軟件測試33</b></p><p> 5.1 軟件測試的
19、方法與步驟33</p><p> 5.2 測試用例設計與測試用例的運行過程及測試結果分析34</p><p> 5.2.1模塊測試34</p><p> 5.2.2集成測試35</p><p> 5.2.3 驗收測試36</p><p><b> 5.3 評價36</b>&l
20、t;/p><p><b> 6.結束語37</b></p><p> 6.1 工作成果37</p><p> 6.2 改進意見37</p><p> 6.3 收獲體會37</p><p><b> 參考文獻39</b></p><p>
21、<b> 致 謝40</b></p><p><b> 1. 緒 論</b></p><p> 1.1畢業(yè)設計主要任務</p><p> 1.實現(xiàn)圖書館對所藏圖書的按類別、書名等多方面的查詢,最大的方便讀者和圖書館工作人員對所需圖書的查詢;</p><p> 2.建立圖書館外借讀
22、者數(shù)據(jù)庫,方便工作人員對讀者進行有效管理;</p><p> 3.建立圖書館工作人員數(shù)據(jù)庫,限定每個工作人員對軟件操作的權限,最大限度的保護數(shù)據(jù)庫;</p><p> 4.實現(xiàn)圖書館對新書入庫,舊書注銷的簡單處理,并且建立書籍檔案,方便進貨;</p><p><b> 5.實現(xiàn)圖書館</b></p><p> 1
23、.2目前圖書管理系統(tǒng)存在的問題</p><p> 1)檢索速度慢、效率低</p><p> 因為圖書館的藏書種類多、數(shù)量多,將藏書準確地分門別類,快速檢索,手工進行非常困難往往是終于查到了二偉的信息,館中沒有此書或已被別人借走。圖書館的規(guī)模越大,這個問題越突出。</p><p> 2)借書、還書工作量大</p><p> 借書、還書頻
24、率越大,說明圖書館的作用越大,然而隨之而來的大量的借書、還書登記、實存圖書的更新以及借出圖書超期、遺失等的處理,其工作量之大,往往是人工操作所難以勝任的。而且經(jīng)常會出現(xiàn)這樣那樣的差錯。</p><p> 3)圖書統(tǒng)計工作難、藏書更新不能及時完成。</p><p> 圖書館的圖書應根據(jù)科學技術的發(fā)展和教學工作的需要及時添加和更新,然而由于藏書數(shù)量及圖書種類越來越多,加上自然損耗,人為破壞
25、,使圖書的統(tǒng)計工作難以及時完成,藏書的更新也就很難有針對性地進行,藏書的知識結構得不到良好地控制。</p><p> 我校也是一所發(fā)展中的高校,近兒年的發(fā)展速度很快,圖書館的規(guī)模和藏書數(shù)量也不斷的擴大,為了解決海量圖書的管理問題,改變傳統(tǒng)的管理方式也是迫在眉睫了。</p><p><b> 1.3課題意義</b></p><p> 隨著計
26、算機的廣泛應用,其逐步成為現(xiàn)代化的標志。圖書館或者一些企業(yè)內(nèi)部,甚至是書店,在正常運行過程中總是面對大量的讀者信息,書籍信息以及兩者相互作用產(chǎn)生的借書信息、還書信息。因此需要對讀者資源、書籍資源、借書信息、還書信息進行管理,及時了解各個環(huán)節(jié)中信息的變更,要對因此而產(chǎn)生的單據(jù)進行及時的處理,為了提高圖書館或者企業(yè)內(nèi)部對圖書存銷的自動化的管理,能夠更快速的滿足讀者的要求,提高各種工作的效率,現(xiàn)對其設計相應的系統(tǒng),以達到上述的目的[1]。&l
27、t;/p><p> 圖書管理系統(tǒng)的主要功能是實現(xiàn)圖書館圖書借閱和歸還的管理的自動化。圍繞這一主</p><p> 要功能,本系統(tǒng)涉及到以下核心功能:借閱管理,歸還管理。除了這些核心功能外,還包括一些基本和輔助功能,它們是:用戶管理、圖書館參數(shù)管理、圖書管理、統(tǒng)計查詢。</p><p> 1.4論文的工作和安排</p><p> 本次設計的
28、目標是,開發(fā)一個圖書館借閱管理系統(tǒng)。借助該系統(tǒng),管理員通過快捷可靠的數(shù)據(jù)庫管理,方便的管理圖書館的信息資料,規(guī)范化的管理讀者用戶,設定不同用戶權限,并能通過互聯(lián)網(wǎng)向讀者提供更為方便的在線查詢服務,方便讀者的使用,最終達到提高圖書館資源利用效率的目的。</p><p> 論文設計和實現(xiàn)了圖書借閱管理系統(tǒng)系統(tǒng),可以根據(jù)用戶的不同權限,對圖書館的的各種信息進行添加、刪除、修改或查詢操作。論文分為五個部分:</p
29、><p> 第一章即本章緒論,簡述圖書館借閱管理系統(tǒng)這個課題的背景情況以及開發(fā)本系統(tǒng)的意義。</p><p> 第二章為需求分析,本章中明確了系統(tǒng)需要實現(xiàn)的功能,分析了系統(tǒng)的用例,并介紹根據(jù)系統(tǒng)的需求選擇的開發(fā)工具和技術的概況。</p><p> 第三章是總體設計,詳細描述了本系統(tǒng)中數(shù)據(jù)庫的設計情況,并給出了系統(tǒng)總體界面的設計方案。 </p><
30、;p> 第四章為程序設計與編碼各主要功能模塊的實現(xiàn)方法和部分關鍵代碼,同時提供了個主要界面運行的參考圖片,以更直觀了解系統(tǒng)的實現(xiàn)情況。</p><p> 第五章是軟件測試,測試系統(tǒng)功能實現(xiàn)并對測試結果進行記錄分析</p><p> 第六章為結束語,為此次畢業(yè)設計做一個總結,總結所獲得的經(jīng)驗和體會。</p><p> 2.圖書借閱管理需求分析</p
31、><p><b> 2.1 可行性分析</b></p><p> 采用現(xiàn)代化統(tǒng)一的計算機信息網(wǎng)站系統(tǒng),能夠有效優(yōu)化圖書館管理系統(tǒng),使其高效的發(fā)揮最大作用,能夠迅捷的為讀者提供相應的服務。開發(fā)本系統(tǒng)的可行性研究如下:</p><p> 2.1.1 技術可行性</p><p> 技術上的可行性分析主要分析技術條件能否順利
32、完成開發(fā)工作,軟、硬件能否滿足需要。本系統(tǒng)采用JSP開發(fā)出友好美觀的人機界面,便于用戶理解、操作。數(shù)據(jù)庫管理系統(tǒng)采用MySQL,它能夠處理大量數(shù)據(jù),同時保持數(shù)據(jù)的完整性、安全性。因此本系統(tǒng)的開發(fā)平臺已成熟可行。硬件方面,在科技飛速發(fā)展的今天,硬件更新速度越來越快,容量越來越大,可靠性越來越高,價格越來越便宜,因此硬件平臺也能夠滿足本系統(tǒng)所需[2]。</p><p> 2.1.2.經(jīng)濟可行性</p>
33、<p> 鑒于計算機技術發(fā)展異常迅猛,在硬件軟件配置以及開發(fā)技術均以可行的情況下開發(fā)這樣一個管理系統(tǒng)成本不會很高,但其可以大大提高圖書館的工作效率,也是圖書館管理發(fā)展的必然趨勢,其必將有比較寬闊的市場,因此改性統(tǒng)在經(jīng)濟可行性上時可行的[2]。</p><p> 2.2 圖書借閱管理系統(tǒng)需求概述</p><p><b> 2.2.1系統(tǒng)目標</b>&l
34、t;/p><p> 該系統(tǒng)主要建立一個基于B/S模式的圖書館借閱管理系統(tǒng),面對當起很多小型圖書管理仍是人工管理帶來的檢索速度慢,效率低,借閱歸還圖書量大,圖書統(tǒng)計工作量大,藏書不能完成及時更新的問題,該系統(tǒng)可以對跟系統(tǒng)的三個用戶類型的使用實現(xiàn):</p><p> 1.對于讀者在本系統(tǒng)的應用下可實現(xiàn)按照各種方式(如:書名,編號,作者)查詢圖書館的藏書請客,方便的借閱圖書,續(xù)借圖書,歸還圖書,
35、能夠查詢自己的借閱圖書情況。</p><p> 2.對于圖書館工作人員能夠實現(xiàn)方便的對圖書進行查詢,方便的進行讀者借閱情況查詢,方便的進行借書還書處理等,便捷的對圖書信息進行添加、修改、刪除,分類管理等操作,對讀者信息進行相關添加,修改,分類管理等操作。</p><p> 3.對于系統(tǒng)管理員可以對圖書館信息進行修改更新操作,對系統(tǒng)用戶進行添加、修改、刪除、權限設置等操作,對圖書館的辦證
36、參數(shù)進行修改維護等操作功能。</p><p> 2.2.2用戶類和用戶特性</p><p> 圖書借閱管理系統(tǒng)是一個基于B/S模式的對圖書館進行高效率管理的應用系統(tǒng),它的用戶主要是讀者和圖書管理員,學生通過該系統(tǒng)進行圖書查詢進而對自己需要的圖書進行借閱及自己的借閱情況進行查詢,圖書管理員則通過本系統(tǒng)實現(xiàn)對圖書及讀者的高效管理,除此之外,還需要一個系統(tǒng)管理員對不同的用戶進行權限的設置等操
37、作[2]。</p><p> 三類用戶的具體描述如下表所示:</p><p> 表2.1用戶具體描述</p><p> 2.3 圖書借閱管理系統(tǒng)需求模型</p><p><b> 2.3.1功能描述</b></p><p> 圖書借閱管理系統(tǒng)的主要任務是實現(xiàn)讀者迅速檢索查詢,方便借閱歸還
38、圖書,圖書管理員高效的完成系統(tǒng)的各項基本操作,系統(tǒng)管理員是管理用戶設置權限等操作[3],從圖2.1可以看出圖書借閱管理系統(tǒng)要完成一下功能:</p><p><b> 1. 登錄。</b></p><p> 讀者、圖書管理員,系統(tǒng)管理員進入該系統(tǒng)必須登錄,身份驗證正確了才可以進入該系統(tǒng),以不同身份進入該系統(tǒng)所對應的系統(tǒng)使用權限是不同的。</p><
39、;p> 2. 系統(tǒng)設置功能:</p><p> 系統(tǒng)管理員可以設置圖書館相關的參數(shù)信息。</p><p><b> 3.用戶管理功能:</b></p><p> 對系統(tǒng)用戶進行添加,修改,刪除,權限設置等操作。</p><p><b> 4.查詢功能:</b></p>
40、<p> 對圖書館的館藏圖書,借閱歷史,讀者用戶等信息進行查詢。</p><p><b> 5.其他功能</b></p><p> 系統(tǒng)管理員可以修改自己的密碼,并且擁有其他用戶所擁有的所有功能。</p><p> 下面的系統(tǒng)用例圖描述了整個系統(tǒng)用戶之間的動作聯(lián)系,及功能模塊的概述[4]。</p><p&g
41、t;<b> 圖2.1系統(tǒng)用例圖</b></p><p> 2.3.2圖書管理員詳細功能描述</p><p><b> 讀者管理功能:</b></p><p> 對讀者的類型和讀者檔案進行管理,包括添加,修改,刪除讀者類型和讀者用戶的相關信息,管理不同類型讀者借閱圖書的數(shù)量。</p><p>
42、;<b> 圖書管理功能:</b></p><p> 包括對圖書類型和具體圖書信息的管理,可以增加,修改,刪除圖書,豐富具體圖書的信息,對不同圖書進行分類操作。</p><p><b> 圖書借閱功能:</b></p><p> 可以完成對讀者借閱,續(xù)接和還書的操作。</p><p><
43、;b> 系統(tǒng)查詢功能:</b></p><p> 查詢圖書相關資料,借閱歷史和借閱到期題型.</p><p><b> 修改密碼功能:</b></p><p> 可以修改自己的登錄密碼。</p><p> 2.3.3讀者詳細功能描述</p><p> 1) 修改登陸密
44、碼:</p><p> 修改自己的登錄密碼。</p><p><b> 2) 查詢功能:</b></p><p> 對圖書館圖書信息進行查詢,對自己當前借閱書籍進行查詢,對圖書規(guī)劃到期題型進行查看。</p><p> 2.3.4主要用例的用例描述</p><p> 圖書借閱借閱管理系統(tǒng)涉
45、及到的用例包括:圖書借閱,圖書歸還,讀書查詢,讀者信息管理,圖書信息管理,用戶管理等,現(xiàn)就系統(tǒng)的主要用例圖書借閱,圖書歸還,圖書查詢進行詳細分析。</p><p> 1)用例“圖書借閱”</p><p> 2)用例“圖書歸還”</p><p> 3)用例“圖書查詢”</p><p><b> 3.總體設計</b>
46、</p><p><b> 3.1 數(shù)據(jù)庫設計</b></p><p> 3.1.1數(shù)據(jù)庫設計概述</p><p> 數(shù)據(jù)庫是整個系統(tǒng)的基石,數(shù)據(jù)庫的設計優(yōu)劣直接影響到整個系統(tǒng)的設計成敗,本節(jié)對數(shù)據(jù)庫的設計進行專門闡述[5]。</p><p> 數(shù)據(jù)庫是數(shù)據(jù)管理的最新技術。十多年來數(shù)據(jù)庫管理系統(tǒng)已從專用的應用程序
47、發(fā)展成為通用的系統(tǒng)軟件。由于數(shù)據(jù)庫具有數(shù)據(jù)結構化,最低冗余度,較高的程序與數(shù)據(jù)獨立性,易于擴充,易于編制應用程序等優(yōu)點,較大的信息系統(tǒng)都是建立在數(shù)據(jù)庫設計之上的。因此不僅大型計算機及中小型計算機,甚至微型機都配有數(shù)據(jù)庫管理系統(tǒng)[6]。</p><p> 數(shù)據(jù)庫系統(tǒng)的出現(xiàn)使信息系統(tǒng)從以加工數(shù)據(jù)的程序為中心轉向圍繞共享的數(shù)據(jù)庫為中心的新階段。這樣既便于數(shù)據(jù)的集中管理,又有利于應用程序的研制和維護,提高了數(shù)據(jù)的利用性
48、和相容性,提高了決策的可靠性。目前,數(shù)據(jù)庫已經(jīng)成為現(xiàn)代信息系統(tǒng)不可分割的重要組成部分。數(shù)據(jù)庫技術也是計算機領域中發(fā)展最快的技術之一。</p><p> 數(shù)據(jù)庫設計是把現(xiàn)實世界的實體模型與需求轉換成數(shù)據(jù)庫的模型的過程,它是建立數(shù)據(jù)庫應用系統(tǒng)的核心問題。數(shù)據(jù)庫及其應用的性能都建立在良好的數(shù)據(jù)庫設計的基礎之上,數(shù)據(jù)庫的數(shù)據(jù)是一切操作的基礎,如果數(shù)據(jù)庫設計不好,那么其它一切用于提高數(shù)據(jù)庫性能的方法收效都是有限的。數(shù)據(jù)庫
49、設計的關鍵是如何使設計的數(shù)據(jù)庫能合理地存儲用戶的數(shù)據(jù),方便用戶進行數(shù)據(jù)處理[6]。</p><p> 設計數(shù)據(jù)庫必須遵循一定的規(guī)則,在關系型數(shù)據(jù)庫中,這種規(guī)則就是范式,范式是符合某一種級別的關系模式的集合。一般人們設計數(shù)據(jù)庫遵循第三范式。即:數(shù)據(jù)庫表中不包含已在其他表中包含的非主關鍵字信息。采用范式減少了數(shù)據(jù)冗余,節(jié)約了存儲空間,同時加快了增、刪、改的速度[6]。</p><p> 整
50、個系統(tǒng)所包括的信息有圖書信息、讀者信息、留言信息、圖書借閱信息、圖書歸還信息、系統(tǒng)用戶信息、讀者類型信息??蓪⑦@些信息抽象為下列系統(tǒng)所需要的數(shù)據(jù)項和數(shù)據(jù)結構:</p><p> 1)圖書信息(編號,圖書名稱,圖書類型,作者,譯者,ISBN號,價格,出版社,所在書架,入庫時間,操作員)</p><p> 2)圖書類型(編號,名稱,可借閱天數(shù))</p><p>
51、3)讀者信息(編號,姓名,性別,條形碼,讀者類型,出生年月,有效證件,證件號碼,登記日期,電話,郵箱,操作員)</p><p> 4)讀者類型(名稱,可借閱圖書本數(shù))</p><p> 5)圖書借閱信息(圖書編號,讀者ID,借出時間,應還時間,是否歸還,操作員)</p><p> 6)圖書歸還信息(圖書編號,讀者ID,歸還時間,操作員)</p>
52、<p> 7)用戶(編號,用戶名稱,密碼)</p><p> 8)圖書館信息(編號,名稱,館長,電話,地址,郵箱,創(chuàng)建日期,簡介)</p><p> 圖書館參數(shù)信息(編號,辦證費用,有效期限)</p><p> 注:帶下劃線表示主鍵</p><p> 在這里使用E-R圖描述了圖書借閱管理系統(tǒng)的數(shù)據(jù)模型。圖3.1圖書借閱管理
53、系統(tǒng)E-R圖描述了該系統(tǒng)所涉及到的實體以及他們之間的關系。具體結構如下圖所示:</p><p> 圖3.1 系統(tǒng)E-R 圖</p><p> 3.1.2圖書信息表結構設計</p><p> 圖書信息表主要用于存儲圖書館中所藏圖書的相關信息,其中的相關信息是在圖書入庫時由操作員進行添加完善,此表主要用于讀者和圖書管理員對館中圖書的查詢,系統(tǒng)用戶根據(jù)圖書的某個屬性
54、進行查詢,便可得知圖書的其他相關信息,其中圖書所在書架屬性是便于讀者借閱時對圖書的尋找,圖書價格是在讀者不慎將圖書遺失時對遺失圖書進行賠償?shù)囊罁?jù)。表的具體結果如下:</p><p> 表3.2圖書信息表tb_bookinfo</p><p> 3.1.3圖書類型信息表結構設計</p><p> 該表的設計主要是方便對圖書的分類,和對圖書的查詢,在實際應用中圖書
55、管理員就是根據(jù)圖書類型的不同將之分列在不同的書架,以方便讀者的借閱尋找,其中可借閱天數(shù)項設置了不同類型圖書的借閱期限,可根據(jù)圖書的具體情況進行不同的維護管理,表的具體結構設計如下:</p><p> 表3.3圖書類型信息表tb_booktype</p><p> 3.1.4 讀者信息表結構設計</p><p> 讀者信息表的設計是為了圖書館管理員對讀者進行管理
56、,其中讀者ID,不同類型證件的號碼都是唯一的,是讀者在借閱圖書時需要輸入對讀者身份進行識別的信息,讀者郵件電話等信息室為了與讀者進行聯(lián)系,讀者類型信息決定了讀者一次性可借閱的圖書的數(shù)量,注冊時間可用于查詢計算讀者身份有效的期限,操作員是為了便于對信息才操作的查詢。表的具體結構設計如下:</p><p> 表3.4讀者信息表tb_reader</p><p> 3.1.5讀者類型信息表結
57、構設計</p><p> 此表的設計是為了對不同身份的讀者進行分類方便讀者的管理,其中可借閱圖書數(shù)量的屬性設定,是根據(jù)讀者需求的不同對起權限進行的設置,用于規(guī)定不同類型讀者一次可借閱的圖書數(shù)量,表的具體結構設計如下:</p><p> 表3.5 讀者類型信息表tb_readertype</p><p> 3.1.6圖書借閱信息表結構設計</p>
58、<p> 該表的設計是用于對讀者借閱圖書進行管理,表中圖書ID屬性是對借閱圖書的唯一性識別標識,讀者ID號記錄借閱的相應讀者,結出時間記錄了相應的歸還時間,以及歸還時是否超時,操作員是對借閱進行操作的人員的記錄方便日后的查詢,是否歸還標識可查詢當起讀書是否被歸還,表的具體結構設計如下:</p><p> 表 3.6 圖書借閱信息表 tb_borrow</p><p> 3
59、.1.7圖書歸還信息表結構設計</p><p> 與圖書借閱信息表形成對照的是圖書歸還信息表,該表的設計除了像上表一樣把借閱的圖書與相應的借閱者進行對應的聯(lián)系以外還記錄了讀者應歸還圖書的時間,以此判斷讀者的借閱是否超時,表的具體結構設計如下:</p><p> 表 3.7圖書歸還信息表tb_giveback</p><p> 3.1.8用戶信息表結構設計<
60、;/p><p> 該表的設計用于記錄圖書管理系統(tǒng)用戶的信息,方便對用戶的管理,表中包括用戶ID 和用戶的登錄密碼,表的具體結構設計如下:</p><p> 表 3.8系統(tǒng)用戶信息表tb_user</p><p> 3.1.9圖書館信息表結構設計</p><p> 該表包含了圖書館的名稱,地址,聯(lián)系方式,建館時間,簡介等信息,是對圖書館基本
61、屬性信息的描述,方便外界讀者對圖書館的了解,表的具體結構設計如下:</p><p> 表3.9圖書館信息表 tb_library </p><p> 3.1.10辦證參數(shù)信息表結構設計</p><p> 該表是為校外人員設計的,對于需要到圖書館進行借閱的讀者可辦理臨時的借閱證用于對圖書的借閱憑證,表中包含了辦證所需費用以及證件的有效期限,表的具體結果設計如下:
62、</p><p> 表3.10圖書證參數(shù)信息表tb_parameter</p><p> 3.2 系統(tǒng)總體結構設計</p><p> 該系統(tǒng)在Windows98/2000/XP環(huán)境下,主要采用JSP開發(fā)工具,MySQL數(shù)據(jù)庫來設計,開發(fā)過程與成果應符合GB/T 11457-1995軟件工程術語,GB/T 8567-1988計算機軟件產(chǎn)品開發(fā)文件編制指南等[7]
63、。</p><p> 3.2.1圖書管理系統(tǒng)總體結構圖</p><p> 繪制系統(tǒng)結構圖的過程,實際上就是對系統(tǒng)功能模塊進行分解設計的過程,即合理地將數(shù)據(jù)流程圖轉變?yōu)樗枰南到y(tǒng)結構圖[8]。</p><p> 系統(tǒng)結構圖將會使讀者和用戶能直觀的了解系統(tǒng)的結構模式,理解系統(tǒng)的各個功能的結構,能很好地方便用戶使用和理解整個系統(tǒng)。</p><p
64、> 本系統(tǒng)的結構圖如下:</p><p> 圖3.3系統(tǒng)總體結構圖</p><p> 根據(jù)需求分析的結果,按照“低耦合、高內(nèi)聚”的原則,本系統(tǒng)將劃分為以下主要功能模塊:系統(tǒng)管理員功能模塊,讀者管理功能模塊,圖書管理功能模塊,圖書借還功能模塊;系統(tǒng)查詢功能模塊[8]。</p><p> 3.2.2 系統(tǒng)管理員模塊功能</p><p&g
65、t; 該模塊主要包括圖書館信息設置,用戶管理,參數(shù)設置,書架設置。</p><p><b> 1.圖書館信息設置</b></p><p> 該功能選項用于系統(tǒng)管理員對圖書館名稱,地址,聯(lián)系方式,簡介等信息的管理更新,以便于讀者和外界人士對圖書館的了解。該功能是對td_library表進行維護修改等操作,修改后的信息將被保存在該表中。</p><
66、;p><b> 2.用戶設置</b></p><p> 該功能子模塊主要是系統(tǒng)管理員對系統(tǒng)用戶的管理,通過此子模塊的功能實現(xiàn)可以對用戶進行添加、修改、刪除、權限設置等操作,該子模塊能將圖書館的不同工作細化到不同的相關人員,極大地提高了圖書館的工作效率。該操作是對tb_users表進行操作,在對用戶進行了相關的操作后把操作后的最新信息存放在該表中。</p><p&
67、gt;<b> 3.圖書館參數(shù)設置</b></p><p> 通過該子模塊設置在圖書館辦理臨時讀者證的費用及證件有效期限。該操作是對于tb_parameter表進行,并把操作后的最新數(shù)據(jù)存放在該表中。</p><p> 3.2.3 讀者管理模塊功能</p><p> 該模塊主要包含讀者類型管理和讀者信息管理兩個子模塊:</p>
68、;<p><b> 讀者類型管理</b></p><p> 該子模塊是對圖書館系統(tǒng)用戶讀者的類型進行維護,修改等操作,在此模塊中主要設置不同類型讀者一次性可借閱的圖書的數(shù)量,該操作是對于tb_resderType表進行,并將操作結果保存在該表中。</p><p><b> 讀者信息管理</b></p><p
69、> 該子模塊是對讀者的基本信息進行管理,可以對讀者的基本信息進行添加,修改,刪除操作,這下操作均是對tb_resder表進行的,并將操作后的結果保存在該表中。</p><p> 3.2.4 圖書管理模塊功能 </p><p> 圖書管理功能模塊可分為圖書類型管理和圖書信息管理兩個子模塊,其各自的實現(xiàn)分別如下面表中所示:</p><p>
70、 表3.11 圖書類型管理描述</p><p> 表3.12 圖書信息管理描述</p><p> 3.2.5 圖書借還模塊功能</p><p> 該功能模塊主要實現(xiàn)對讀者借閱、續(xù)接、歸還圖書的操作,其中子模塊各自的描述如下各表所列:</p><p> 表3.13 圖書借閱描述</p><p> 表3.1
71、4 圖書續(xù)借描述</p><p> 表3.15圖書歸還描述</p><p> 3.2.6 系統(tǒng)查詢模塊功能</p><p> 該模塊包括對圖書館藏書進行查詢,對讀者借閱情況進行查詢,以及對借閱到期和超期的讀者進行提醒的信息,其中三個子模塊的各自實習如下所示:</p><p> 表3.16 圖書查詢描述</p><p
72、> 表3.17 圖書借閱查詢描述</p><p> 表3.18 圖書借閱到期提醒描述</p><p><b> 4.程序設計與編碼</b></p><p> 4.1開發(fā)平臺與工具</p><p> 4.1.1 J2EE平臺</p><p> J2EE ,即是Java2平臺企業(yè)版(
73、Java 2 Platform Enterprise Edition),是原Sun公司(現(xiàn)已被甲骨文公司收購)為企業(yè)級應用推出的標準平臺。它簡化了企業(yè)解決方案的開發(fā)、部署和管理相關復雜問題的體系結構,J2EE技術的基礎就是核心Java平臺或Java 2平臺的標準版,J2EE不僅鞏固了標準版中的許多優(yōu)點,例如"編寫一次、隨處運行"的特性、方便存取數(shù)據(jù)庫的JDBC API、CORBA技術以及能夠在Internet應用中保
74、護數(shù)據(jù)的安全模式等等,同時還提供了對 EJB(Enterprise JavaBeans)、Java Servlets API、JSP(Java Server Pages)以及XML技術的全面支持。其最終目的就是成為一個能夠使企業(yè)開發(fā)者大幅縮短投放市場時間的體系結構。J2EE體系結構提供中間層集成框架用來滿足無需太多費用而又需要高可用性、高可靠性以及可擴展性的應用的需求。通過提供統(tǒng)一的開發(fā)平臺,J2EE降低了開發(fā)多層應用的費用和復雜性,同
75、時提供對現(xiàn)有應用程序集成強有力支持,完全支持Enterprise JavaBeans,有良好的向導支持</p><p> 在開發(fā)圖書館借閱管理系統(tǒng)的過程中,應用Myeclipse6.0.1,它可以在數(shù)據(jù)庫和J2EE的開發(fā)、發(fā)布,以及應用程序服務器的整合方面極大的提高工作效率。Myeclipse是功能豐富的J2EE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持HTML, Struts, JSF,
76、CSS, Javascript, SQL[10]。</p><p> 4.1.2 WEB服務器和數(shù)據(jù)庫</p><p> 在系統(tǒng)的開發(fā)過程中使用的Web應用服務器是Tomcat,是Apache 軟件基金會(Apache Software Foundation)的Jakarta 項目中的一個核心項目,由Apache、SUN和其他一些公司及個人共同開發(fā)而成。由于有了Sun 的參與和支持,最
77、新的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現(xiàn)。Tomcat是一個小型的輕量級應用服務器,它運行時占用的系統(tǒng)資源小、擴展性好、支持負載平衡和郵件服務等開發(fā)應用系統(tǒng)常用的功能,因此在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的時候,經(jīng)常被使用[11]。</p><p> 使用MySQL作為數(shù)據(jù)庫開發(fā)工具。MySQL是一個小型關系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB公司。在2008年1月16號被
78、Sun公司收購。目前MySQL被廣泛地應用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫[11]。</p><p> 為了開發(fā)的便捷快速,使用struts第三方插件。Struts是一個全新的MVC框架,實在WebWork基礎上發(fā)展起來的[12]。</p><p>
79、開發(fā)系統(tǒng)用的系統(tǒng)工具如表4.1所示:</p><p> 表4.1 系統(tǒng)開發(fā)平臺和工具</p><p><b> 4.2程序設計</b></p><p> 4.2.1程序設計概述</p><p> 在設計的Web層應用了著名的MVC模式,V有JSP來實現(xiàn),為了業(yè)務邏輯和表示的分離.它是基于Web應用系統(tǒng),它的客戶端
80、使用Broswer,然后是Web層的應用,業(yè)務邏輯層(有EJB實現(xiàn)),資源管理層??蛻粽埱鬄g覽頁面,一般Web層的View有JSP組成,并且使用了大量Taglib。把每個請求映射到某個HTMLAction類來響應它。HTML Action類是一個標準的類,執(zhí)行選擇的HTML Action。使用MVC模式減少了代碼的復制,即減少了代碼的維護,由于模型返回的格式不帶任何顯示格式,因而模型可以直接應用于接口的使用,還因為MVC模型把不同的模型
81、和不同的視圖組合在一起完成不同的請求,因此,控制層可以說包含了用戶請求權限的概念[13]。</p><p> 在設計中還因應用了Struts框架,Struts跟Tomcat、Turbine等諸多Apache項目一樣,是開源軟件,這是它的一大優(yōu)點。使開發(fā)者能更深入的了解其內(nèi)部實現(xiàn)機制[11]。 </p><p> 除此之外,Struts的優(yōu)點主要集中體現(xiàn)在Taglib和頁面導航。Tagl
82、ib是Struts的標記庫,靈活動用,能大大提高開發(fā)效率。頁面導航使系統(tǒng)的脈絡更加清晰。通過一個配置文件,即可把握整個系統(tǒng)各部分之間的聯(lián)系,這對于后期的維護有著莫大的好處[11]。</p><p> 4.2.2數(shù)據(jù)庫與Web服務器的連接</p><p> 數(shù)據(jù)庫連接時采用連接池技術鏈接MySQL,具體代碼實現(xiàn)如下:</p><p> public ConnDB
83、(){</p><p><b> try {</b></p><p> InputStream in=getClass().getResourceAsStream(propFileName);</p><p> prop.load(in);//通過輸入流對象加載Properties文件</p><p&
84、gt; dbClassName = prop.getProperty("DB_CLASS_NAME");//獲取數(shù)據(jù)庫驅動</p><p> dbUrl = prop.getProperty("DB_URL",</p><p> "jdbc:mysql://127.0.0.1:3306/db_librarySys?user=root
85、&password=123&useUnicode=true");</p><p><b> }</b></p><p> catch (Exception e) {</p><p> e.printStackTrace();//輸出異常信息</p><p><b> }&l
86、t;/b></p><p><b> }</b></p><p> public static Connection getConnection() {</p><p> Connection conn = null;</p><p><b> try {</b></p>
87、<p> Class.forName(dbClassName).newInstance();</p><p> conn = DriverManager.getConnection(dbUrl);</p><p><b> }</b></p><p> catch (Exception ee) {</p>&l
88、t;p> ee.printStackTrace();</p><p><b> }</b></p><p> if (conn == null) {</p><p> System.err.println(</p><p> "警告: DbConnectionManager.getConnect
89、ion() 獲得數(shù)據(jù)庫鏈接失敗.\r\n\r\n鏈接類型:" +</p><p> dbClassName + "\r\n鏈接位置:" + dbUrl);</p><p><b> }</b></p><p> return conn;</p><p><b> }<
90、/b></p><p><b> /*</b></p><p> * 功能:執(zhí)行查詢語句</p><p><b> */</b></p><p> public ResultSet executeQuery(String sql) {</p><p><b
91、> try {</b></p><p> conn = getConnection();</p><p> stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,</p><p> ResultSet.CONCUR_READ_ONLY);</p><p
92、> rs = stmt.executeQuery(sql);</p><p> } catch (SQLException ex) {</p><p> System.err.println(ex.getMessage());</p><p><b> }</b></p><p> return rs;&
93、lt;/p><p><b> }</b></p><p><b> /*</b></p><p> * 功能:執(zhí)行更新操作</p><p><b> */</b></p><p> public int executeUpdate(String s
94、ql) {</p><p> int result = 0;</p><p><b> try {</b></p><p> conn = getConnection();//調(diào)用getConnection()方法構造Connection對象的一個實例conn</p><p> stmt = conn.
95、createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,</p><p> ResultSet.CONCUR_READ_ONLY);</p><p> result = stmt.executeUpdate(sql);//執(zhí)行更新操作</p><p> } catch (SQLException ex) {<
96、;/p><p> result = 0;</p><p><b> }</b></p><p> return result;</p><p><b> }</b></p><p><b> /*</b></p><p>
97、 * 功能:關閉數(shù)據(jù)庫的連接</p><p><b> */</b></p><p> public void close() {</p><p><b> try {</b></p><p> if (rs != null) {</p><p> rs.close
98、();</p><p><b> }</b></p><p> if (stmt != null) {</p><p> stmt.close();</p><p><b> }</b></p><p> if (conn != null) {</p>
99、<p> conn.close();</p><p><b> }</b></p><p> } catch (Exception e) {</p><p> e.printStackTrace(System.err);</p><p><b> }</b></p>
100、<p><b> }</b></p><p><b> }</b></p><p> 4.2.3登錄模塊程序設計</p><p> 本模塊主要是用戶通過圖書管理系統(tǒng)的首頁登錄進入該系統(tǒng)。用戶輸入正確的用戶名和密碼,系統(tǒng)會根據(jù)用戶的身份進行相應權限劃分;如果登錄信息有錯誤,則系統(tǒng)提示登入錯誤的信息,并且
101、禁止系統(tǒng)用戶進行任何操作。圖書借閱管理系統(tǒng)的登錄主頁面如圖4.1所示。</p><p> 圖4.1 圖書管理系統(tǒng)登錄首頁</p><p> 用戶在登錄頁面寫好用戶名和密碼,選擇登錄,登錄成功則跳轉到系統(tǒng)的首頁,否則提示錯誤信息[14]。在服務器端進行用戶身份驗證的程序流程圖如圖4.2程序流程圖所示</p><p> 圖4.2用戶登錄流程圖</p>
102、<p> 4.2.4系統(tǒng)管理員功能模塊的實現(xiàn)</p><p> 本模塊中最主要的是管理系統(tǒng)用戶,設置圖書館信息等操作,其中管理系統(tǒng)用戶包括對他們進行添加,修改,刪除及權限劃分操作。</p><p> 其中系統(tǒng)管理員讀系統(tǒng)用戶進行管理的操作頁面如下圖所示:</p><p> 圖4.3 系統(tǒng)管理員管理用戶操作界面</p><p&g
103、t; 其中對系統(tǒng)用戶權限的設置是該操作的重要部分也是系統(tǒng)提高效率的關鍵所在,起具體實現(xiàn)代碼為:</p><p> private ActionForward managerModify(ActionMapping mapping, ActionForm form,</p><p> HttpServletRequest request, HttpServletResponse res
104、ponse) {</p><p> ManagerForm managerForm = (ManagerForm) form;</p><p> managerForm.setId(managerForm.getId()); //獲取并設置管理員ID號</p><p> managerForm.setName(managerForm.getName())
105、; //獲取并設置管理員名稱</p><p> managerForm.setPwd(managerForm.getPwd()); //獲取并設置管理員密碼</p><p> managerForm.setSysset(managerForm.getSysset());//獲取并設置系統(tǒng)設置權限</p><p> managerForm.setRea
106、derset(managerForm.getReaderset()); //獲取并設置讀者管理權限</p><p> managerForm.setBookset(managerForm.getBookset()); //獲取并設置圖書管理權限</p><p> managerForm.setBorrowback(managerForm.getBorrowback());//獲取并
107、設置圖書借還權限</p><p> managerForm.setSysquery(managerForm.getSysquery()); //獲取并設置系統(tǒng)查詢權限</p><p> int ret = managerDAO.update(managerForm); //調(diào)用設置管理員權限的方法</p><p> if (ret == 0) {
108、</p><p> request.setAttribute("error", "設置管理員權限失??!");//保存錯誤提示信息到error參數(shù)中</p><p> return mapping.findForward("error"); //轉到錯誤提示頁面</p><p><b>
109、; } else {</b></p><p> return mapping.findForward("managerModify");//轉到權限設置成功頁面</p><p><b> }</b></p><p><b> }</b></p><p>
110、4.2.5讀者管理功能模塊的實現(xiàn)</p><p> 讀者管理主要實現(xiàn)對讀者的類型管理和信息管理兩個功能子模塊,其中讀者類型管理中需要設置不同類型讀者一次性可借閱的圖書數(shù)量,讀者信息管理則主要管理維護讀者的基本信息,其各自操作界面如下所示:</p><p> 1) 讀者類型管理功能界面:</p><p> 圖4.4 讀者類型管理操作界面</p>&
111、lt;p> 2)讀者信息管理功能界面:</p><p> 圖4.5 讀者信息管理界面</p><p> 該管理功能在設置讀者信息時需要輸入讀者姓名,性別,條形碼,選擇讀者類別,有效證件,證件號碼,電話,e-mail等信息。其中的姓名,性別,條形碼,證件號碼是必填選項。</p><p> 4.2.6查詢功能模塊的實現(xiàn)</p><p&g
112、t; 查詢功能模塊包括圖書查詢,讀者借閱查詢和借閱到期提醒三個子功能模塊。</p><p> 1) 圖書查詢可根據(jù)圖書的條形碼,書名,作者,出版社等不同信息進行查詢,其操作界面圖下圖所示:</p><p> 圖4.6 圖書查詢操作界面</p><p> 實現(xiàn)該功能中根據(jù)讀者不同需求的按條件查詢實現(xiàn)語句如下:</p><p> pub
113、lic Collection query(String strif){</p><p> BookForm bookForm=null;</p><p> Collection bookColl=new ArrayList();</p><p> String sql="";</p><p> if(strif!=
114、"all" && strif!=null && strif!=""){</p><p> sql="select * from (select b.*,c.name as bookcaseName,p.pubname as publishing,t.typename from tb_bookinfo b left join tb_
115、bookcase c on b.bookcase=c.id join tb_publishing p on b.ISBN=p.ISBN join tb_booktype t on b.typeid=t.id where b.del=0) as book where book."+strif+"'";</p><p><b> }else{</b>&l
116、t;/p><p> sql="select b.*,c.name as bookcaseName,p.pubname as publishing,t.typename from tb_bookinfo b left join tb_bookcase c on b.bookcase=c.id join tb_publishing p on b.ISBN=p.ISBN join tb_booktype t o
117、n b.typeid=t.id where b.del=0";</p><p><b> }</b></p><p> System.out.println("圖書查詢時的SQL:"+sql);</p><p> ResultSet rs=conn.executeQuery(sql);</p>
118、<p><b> try {</b></p><p> while (rs.next()) {</p><p> bookForm=new BookForm();</p><p> bookForm.setBarcode(rs.getString(1)); </p><p> bookFo
119、rm.setBookName(rs.getString(2));</p><p> bookForm.setTypeId(rs.getInt(3));</p><p> bookForm.setAuthor(rs.getString(4));</p><p> bookForm.setTranslator(rs.getString(5));</p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設計---圖書館借閱管理系統(tǒng)
- 圖書館借閱管理系統(tǒng)-畢業(yè)設計論文
- 圖書館借閱管理系統(tǒng)---畢業(yè)設計論文
- 畢業(yè)論文--圖書館借閱管理系統(tǒng)
- 畢業(yè)論文--圖書館借閱管理系統(tǒng)
- 圖書館管理系統(tǒng)畢業(yè)設計
- 圖書館管理系統(tǒng)--畢業(yè)設計
- 圖書館管理系統(tǒng)畢業(yè)設計
- 圖書館圖書借閱管理系統(tǒng)的設計與實現(xiàn)畢業(yè)論文
- 計算機專業(yè)畢業(yè)設計(論文)圖書館全開架借閱管理系統(tǒng)
- 畢業(yè)設計---圖書館集成管理系統(tǒng)
- 圖書館管理系統(tǒng)畢業(yè)設計論文
- 圖書館管理系統(tǒng)(完整畢業(yè)設計)
- 畢業(yè)設計---基于web的圖書館借閱系統(tǒng)的設計與實現(xiàn)
- 畢業(yè)設計----基于web的圖書館借閱系統(tǒng)的設計與實現(xiàn)
- 畢業(yè)設計(論文)---圖書館管理系統(tǒng)
- 圖書館管理系統(tǒng)畢業(yè)設計論文
- 圖書借閱管理系統(tǒng)畢業(yè)設計
- 畢業(yè)設計論文 圖書館管理系統(tǒng)設計
- 課程設計---小型圖書館借閱管理子系統(tǒng)
評論
0/150
提交評論