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