版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 計 算 機 與 信 息 工 程 學 院</p><p> 軟硬件專業(yè)綜合課程設計總結(jié)報告</p><p> 題目:網(wǎng)絡版圖書館設計與開發(fā) </p><p> 姓 名: </p><p> 學 號: </p><p> 專 業(yè):
2、計算機科學與技術(shù) </p><p> 指導教師: </p><p> 起止日期: 12.11.26—13.01.20 </p><p> 軟硬件專業(yè)綜合課程設計任務書</p><p><b> 目 錄</b></p><p><b> 1 緒 論1<
3、/b></p><p> 1.1 目前圖書館管理系統(tǒng)存在的問題1</p><p> 1.2 系統(tǒng)設計的目的和意義1</p><p> 1.3 開發(fā)工具及相關(guān)技術(shù)介紹2</p><p> 1.3.1 SSH框架2</p><p> 1.3.2 Tomcat3</p><p&g
4、t;<b> 2 可行性分析3</b></p><p> 2.1 技術(shù)可行性3</p><p> 2.2 經(jīng)濟可行性4</p><p> 2.3 操作可行性4</p><p><b> 3 需求分析5</b></p><p> 3.1 圖書館管理系統(tǒng)需求
5、概述5</p><p> 3.2 功能需求5</p><p> 3.2.1 與讀者相關(guān)的基本功能元素5</p><p> 3.2.2 與管理員相關(guān)的基本功能元素6</p><p> 3.2.3 總體系統(tǒng)的基本功能元素6</p><p> 3.3 性能需求6</p><p>
6、 3.4 運行需求7</p><p><b> 4 系統(tǒng)設計7</b></p><p> 4.1 圖書館管理系統(tǒng)設計指導思想和原則7</p><p> 4.2 設計模式8</p><p> 4.3 圖書館管理系統(tǒng)總體功能概述9</p><p> 4.4 圖書館管理系統(tǒng)各功能
7、模塊概述10</p><p> 4.4.1 系統(tǒng)登錄模塊10</p><p> 4.3.2 圖書管理模塊10</p><p> 4.3.3 學生管理模塊11</p><p> 4.3.4 借閱信息管理模塊12</p><p> 4.3.5 圖書檢索模塊13</p><p>
8、 4.4 系統(tǒng)數(shù)據(jù)庫設計14</p><p><b> 5 系統(tǒng)實現(xiàn)18</b></p><p> 5.1 系統(tǒng)的軟件結(jié)構(gòu)18</p><p> 5.2 登錄系統(tǒng)模塊的實現(xiàn)19</p><p> 5.3 圖書管理模塊的實現(xiàn)20</p><p> 5.3.1 圖書入庫功能的實現(xiàn)
9、20</p><p> 5.3.2 圖書維護功能的實現(xiàn)22</p><p> 5.4 學生管理模塊的實現(xiàn)25</p><p> 5.4.1 學生添加功能的實現(xiàn)25</p><p> 5.4.2 學生維護功能的實現(xiàn)26</p><p> 5.5 借閱信息管理模塊的實現(xiàn)29</p>&l
10、t;p> 5.5.1 辦理圖書借閱功能的實現(xiàn)30</p><p> 5.5.2 辦理圖書歸還功能的實現(xiàn)31</p><p> 5.6 圖書檢索模塊的實現(xiàn)32</p><p> 5.7 系統(tǒng)設計的創(chuàng)新點33</p><p> 5.7.1 系統(tǒng)后臺管理的安全性33</p><p> 5.7.2
11、DAO數(shù)據(jù)訪問接口33</p><p><b> 6 系統(tǒng)測試34</b></p><p> 6.1 系統(tǒng)測試的方法與步驟34</p><p> 6.2 模塊測試35</p><p> 6.2.1 登錄模塊測試35</p><p> 6.2.2 圖書管理測試35</p&
12、gt;<p> 6.2.3 學生管理測試35</p><p> 6.2.4 借閱信息管理測試36</p><p><b> 6.3 評價36</b></p><p><b> 7 總結(jié)37</b></p><p><b> 參考文獻38</b>
13、;</p><p><b> 1 緒 論</b></p><p> 1.1 目前圖書館管理系統(tǒng)存在的問題</p><p> ?。?)檢索速度慢、效率低</p><p> 因為圖書館的藏書種類多。數(shù)量大,將藏書準確的分門別類,快速檢索,手工進行非常困難,往往是終于查到了二維的信息,館中卻沒有此書或已被別人借走。圖書館
14、的規(guī)模越大,這個問題就越突出。</p><p> ?。?)借書、還書工作量大</p><p> 借書、還書頻率越大,說明圖書館的作用越大,然而隨之而來的大量的借書、還書登記、實存圖書的更新以及借出圖書超期,遺失等的處理,其工作量之大,往往是人工操作所難以勝任的,而且經(jīng)常會出現(xiàn)這樣那樣的差錯。</p><p> ?。?)圖書統(tǒng)計工作難、藏書更新不能及時完成</
15、p><p> 圖書館的圖書應根據(jù)科學技術(shù)的發(fā)展和教學工作的需要及時添加和更新,然而由于藏書數(shù)量及圖書種類越來越多,加上自然損耗,人為破壞,使圖書的統(tǒng)計工作難以及時完成,藏書的更新也就很難有針對性的進行,藏書的知識結(jié)構(gòu)得不到良好地控制。</p><p> 我校也是一所發(fā)展中的高校,近幾年的發(fā)展速度很快,圖書館的規(guī)模和藏書的數(shù)量也在不斷地擴大,為了解決海量圖書的管理問題,以及學生借閱圖書的信息
16、問題,改變傳統(tǒng)的管理方式也就成了迫在眉睫的問題了。</p><p> 1.2 系統(tǒng)設計的目的和意義</p><p> 隨著計算機的廣泛應用,其逐步成為現(xiàn)代化的標志。圖書館或者一些企業(yè)內(nèi)部,甚至是書店,在正常運行的過程中總是面對大量的讀者信息,書籍信息以及兩者相互作用產(chǎn)生的借書信息,還書信息。因此需要對讀者資源,書籍資源,借書信息,還書信息進行管理,及時了解各個環(huán)節(jié)中信息的變更,要對因此
17、而產(chǎn)生的單據(jù)進行及時的處理,為了提高圖書館或者企業(yè)內(nèi)部對圖書存銷的自動化的管理,能夠更快速地滿足讀者的要求,提高各種工作效率,現(xiàn)對其設計相應的系統(tǒng),以達到上述的目的。</p><p> 圖書館管理系統(tǒng)的主要功能是實現(xiàn)圖書館圖書的借閱和歸還的管理自動化,圖書新增及銷毀的及時化,用戶及圖書信息的更新,圍繞這些主要功能,本系統(tǒng)涉及到以下核心功能:借閱管理,歸還管理,圖書管理,學生管理。除了這些核心功能外,還包括一些基
18、本和輔助的功能,它們是:圖書信息管理,查詢功能等。</p><p> 該系統(tǒng)設計的主要目標是:</p><p> 設計一個圖書館管理系統(tǒng),該系統(tǒng)主要功能分為圖書查詢、圖書借閱歸還和圖書管理三大部分。在圖書查詢模塊中要求用戶能在瀏覽器中分別書名、著譯者、類型等條件查詢;在圖書管理模塊中要求能完成如辦理借書證(即添加新的學生)、新書錄入、借書還書登記、圖書修改等日常管理功能。</p&
19、gt;<p> 網(wǎng)站前臺設計:前臺供學生使用,學生登錄后有如下權(quán)利</p><p> ①圖書查詢:用戶可以按多種方式對圖書庫中的圖書進行查詢;</p><p> ②借閱信息查詢:用戶可以查看自己的歷史借閱信息。</p><p> ?。?)網(wǎng)站后臺設計:后臺是供管理員使用的,管理員登陸后有如下權(quán)利 ①辦理借閱證:將學生信息填
20、寫完整,在數(shù)據(jù)庫中注冊新用戶;</p><p> ?、跁匿浫爰皠h除:可以對現(xiàn)有圖書庫中的圖書進行刪除,也可以添加新書;</p><p> ?、劢钑€書登記:普通用戶借閱或歸還圖書時,管理員將在借閱信息表中添加相應的記錄;</p><p> ?、軋D書修改:管理員可以對現(xiàn)有圖書的詳細信息進行修改。</p><p> 1.3 開發(fā)工具及相關(guān)技
21、術(shù)介紹</p><p> 1.3.1 SSH框架</p><p> SSH框架是指Struts2 + Hibernate + Spring三大開源框架技術(shù),用SSH技術(shù)進行開發(fā),能夠提高開發(fā)效率,層次清晰。</p><p> Struts2實現(xiàn)頁面的設計和請求的跳轉(zhuǎn)調(diào)用業(yè)務邏輯;Hibernate實現(xiàn)對數(shù)據(jù)的增刪改查;Spring通過依賴注入控制對象的生成和事
22、務的處理。</p><p> 1.3.2 Tomcat</p><p> Tomcat服務器是Apache Group Jakarta小組開發(fā)的一個免費服務器軟件,適合于嵌入Apache中使用,而且,它的源代碼可以免費獲得,你可以自由地對它進行擴充。Tomcat服務器的兼容性很好,有眾多大軟件的公司的支持,而且服務器的性能穩(wěn)定,其發(fā)展前景很好。</p><p>
23、<b> 2 可行性分析</b></p><p> 采用現(xiàn)代化統(tǒng)一的計算機信息網(wǎng)站系統(tǒng),能夠有效優(yōu)化圖書館管理系統(tǒng),使其高校的發(fā)揮最大的作用,能夠迅捷的為讀者提供相應的服務。開發(fā)本系統(tǒng)的可行性如下:</p><p><b> 2.1 技術(shù)可行性</b></p><p> Struts框架為開放者提供了一個統(tǒng)一的標準
24、框架,它提供了一個方法,可以在一個Web應用程序中一起使用JSP和Servlet。 Struts框架本身是使用Java Servlet和JavaServer Pages技術(shù)的一種Model-View-Controller(MVC)實現(xiàn)。它的目的是要解決完全由JSP或完全由Servlet實現(xiàn)的應用程序中的固有的問題。 </p><p> MVC方法采用了JSP和Servlet方法的最佳特性,
25、使這兩種技術(shù)可以協(xié)同工作。明確的是,Servlet是處理層(控制器)。Servlet接收請求,很像Model1架構(gòu)中JSP頁面所做的那樣,并確定如何滿足那些請求。這就意味著,Servlet控制輸入的請求和輸出的回應。商業(yè)邏輯體現(xiàn)了MVC架構(gòu)中的模式。商業(yè)邏輯代碼為頁面做處理。如果進入Servlet的請求是一個數(shù)據(jù)庫查詢,Servlet就將這個請求傳送到一個SQL調(diào)用或類似的數(shù)據(jù)庫代碼。在某種意義上,架構(gòu)的模式部分是讓應用程序處于領(lǐng)先地位
26、的全部原因。 JSP頁面是顯示層(視圖),是用戶與應用程序交互的地方。它提供輸入并顯示結(jié)果。頁面不應該包括任何腳本。它只是將數(shù)據(jù)傳送到Servlet,并接收和顯示返回的數(shù)據(jù)。 該架構(gòu)的優(yōu)勢應該是很明顯的。首先,它將計算和顯示清楚地分開了。結(jié)果很理想,在JSP頁面上沒有出現(xiàn)處理過程,在Servlet或商業(yè)邏輯中沒有數(shù)據(jù)格式。這種分離的另一個好處是Java程序員可以專注于Servlet代碼,HTML編
27、寫者可以專注于JSP。第二點,控制器Servlet做頁面上的所有的決定。在你的頁面和邏</p><p> 另外Struts技術(shù)支持廣泛:Struts作為目前最流行的框架,技術(shù)資料眾多,即使是一些很偏的問題也可以在網(wǎng)上找到相關(guān)的資料和答案。</p><p> 完善的標簽庫:與其他框架比較,Struts提供了最完善的標簽庫,為Web的開發(fā)帶來了極大的方便。</p><p
28、> 開發(fā)工具支持:目前所有主要的Java IDE都支持Struts的開發(fā),有不少專用的開發(fā)工具和插件還提交了Struts的可視化設計,這是其他框架所不可比的。</p><p> 本系統(tǒng)采用的技術(shù)均屬當前流行的開發(fā)技術(shù),具有技術(shù)成熟、效率高、穩(wěn)定、安全等優(yōu)點,并且自行配置的兼容機性能優(yōu)越,能夠支持以上軟件的運行。所以,本系統(tǒng)在技術(shù)上是完全可行的。</p><p> 2.2 經(jīng)濟可
29、行性 </p><p> 根據(jù)成本/效益分析法,本系統(tǒng)所需的軟硬件資源都已具備,該系統(tǒng)簡單易懂,本系統(tǒng)具有成本相對較低、利益高的特點,經(jīng)濟上可行。</p><p> 2.3 操作可行性 </p><p> 本系統(tǒng)開發(fā)的開發(fā)宗旨是以便捷為中心。開發(fā)后的系統(tǒng)應具有美觀、大方、簡單、易操作等優(yōu)點,即使是不懂計算機的人員也可以根據(jù)系統(tǒng)提示使用和管理本系統(tǒng),它的操作簡單
30、的特點使本系統(tǒng)在操作上可行。</p><p><b> 3 需求分析</b></p><p> 3.1 圖書館管理系統(tǒng)需求概述</p><p> 圖書館管理系統(tǒng)的開發(fā)主要涉及到圖書的管理,學生信息的管理,借閱信息的管理三大功能的數(shù)據(jù)管理。從管理的角度可將圖書分為三類:圖書信息管理、系統(tǒng)用戶管理、讀者數(shù)據(jù)管理。圖書信息管理包括:添加新進圖書
31、、刪除舊圖書、修改圖書信息。系統(tǒng)用戶管理包括:修改用戶信息、辦理新用戶、注銷用戶。讀者數(shù)據(jù)管理主要包括:讀者借閱信息的管理,借閱圖書以及歸還圖書。</p><p> 圖書借閱者的需求是查詢圖書室所存的圖書。個人借閱情況以及個人信息的修改;圖書館工作人員對圖書借閱者的借閱及還書要求進行操作,同時形成借書或還書報表給借閱者查看確認;圖書管理人員的功能最為復雜,包括對圖書借閱者、圖書進行管理和維護、以及系統(tǒng)狀態(tài)的查詢
32、和維護等。</p><p> 圖書館管理員可以瀏覽、查詢、添加、刪除、修改的基本信息;瀏覽、查詢、添加、刪除和修改圖書借閱者的基本信息;瀏覽、查詢、添加、刪除和修改圖書的借閱信息。</p><p><b> 3.2 功能需求</b></p><p> 在本系統(tǒng)中,對讀者來說,他們關(guān)心的問題其實是如何方便的查詢到圖書館中的書籍以及自己正在借
33、閱或者已經(jīng)借閱過一些什么書籍,也就是借閱歷史,另一個關(guān)心的問題就是所借閱的圖書是否到期等等。由此可以得出系統(tǒng)一些需求。</p><p> 3.2.1 與讀者相關(guān)的基本功能元素</p><p> (1)圖書查詢:應該能夠按照圖書不同信息對圖書進行查詢,如書名、作者、圖書類型等條件查詢。</p><p> ?。?)讀者信息查詢,讀者信息的查詢內(nèi)容應包括以下幾個方面:
34、</p><p> ①讀者信息——對讀者的基本信息進行顯示。</p><p> ②書刊借閱——對該讀者借閱書籍記錄進行查詢。</p><p> ?、矍房畈樵儭獙υ撟x者超期圖書的欠款情況的查看。</p><p> 3.2.2 與管理員相關(guān)的基本功能元素</p><p> 在面向系統(tǒng)的管理員來說,應注意如下幾點:
35、</p><p> (1)圖書館中有哪些書籍,是否可以被借閱;</p><p> ?。?)對學生的添加、修改和刪除操作的方便性;</p><p> ?。?)查看學生都借閱著哪些書籍;</p><p> (4)對書籍的添加、修改和刪除操作的方便性。</p><p> 3.2.3 總體系統(tǒng)的基本功能元素</p&
36、gt;<p> 從以上問題出發(fā),可以得出本系統(tǒng)應該具有的功能:</p><p> ?。?)圖書查詢——對館內(nèi)的圖書進行查詢;</p><p> (2)借閱管理——對讀者的每一次借閱,還書進行登記和管理;</p><p> (3)圖書管理——對圖書館的書籍進行管理,添加、刪除以及修改信息;</p><p> ?。?)學生管理
37、——對學生進行管理,添加、刪除以及修改信息;</p><p> ?。?)欠款情況管理——對讀者借閱圖書超期欠款的情況進行管理。</p><p><b> 3.3 性能需求</b></p><p> 3.3.1人身和環(huán)境安全性需求</p><p> (1)系統(tǒng)中的軟件不構(gòu)成對人身健康的損害;</p>&
38、lt;p> ?。?)系統(tǒng)中的軟件失效時不造成財產(chǎn)的損失;</p><p> ?。?)系統(tǒng)中的軟件失效時不造成環(huán)境的破壞。</p><p> 3.3.2可靠性和可用性需求</p><p> (1)系統(tǒng)中的軟件可以每天使用24小時,每年使用365天;</p><p> (2)系統(tǒng)中的軟件故障率小于等于5%。</p>&l
39、t;p> 3.3.3容錯性需求</p><p> 用戶輸入錯誤信息時,系統(tǒng)應提示,不應崩潰。</p><p><b> 3.3.4易用性</b></p><p> 軟件適合12-70周歲的智力、視力、體力和肢體正常且具有圖書借閱相關(guān)知識的人使用;</p><p><b> 3.3.5易學性<
40、;/b></p><p> 經(jīng)過1-2天培訓的使用者可以正常使用本軟件。</p><p><b> 3.4 運行需求</b></p><p> 3.4.1預期的物理環(huán)境</p><p> ?。?)系統(tǒng)在常溫環(huán)境下使用;</p><p> ?。?)系統(tǒng)在潔凈的室內(nèi)使用。</p>
41、;<p> 3.4.2預期的技術(shù)環(huán)境</p><p> ?。?)寬帶網(wǎng)、1M以上寬帶互聯(lián)網(wǎng);</p><p> ?。?)臺式計算機:CPU P4 2.0G以上,內(nèi)存256M以上,硬盤40G以上,10M/100M網(wǎng)卡,Windows 2000/2003/NT/XP/Vista/Windows 7中文操作系統(tǒng);</p><p> (3)數(shù)據(jù)庫管理系統(tǒng):
42、Oracle 9g及以上。</p><p><b> 4 系統(tǒng)設計</b></p><p> 4.1 圖書館管理系統(tǒng)設計指導思想和原則</p><p> (1)利用軟件開發(fā)現(xiàn)有軟硬件環(huán)境,及先進的管理系統(tǒng)開發(fā)方案,從而到達充分利用現(xiàn)在資源提高系統(tǒng)開發(fā)水平和應用效果的目的。</p><p> ?。?)系統(tǒng)應該符合軟件
43、工程開發(fā)的理論,開發(fā)方法等開發(fā)依據(jù)。</p><p> ?。?)系統(tǒng)應滿足圖書館管理工作的需要,并達到操作過程中的直觀,方便,實用,安全,準確等要求。</p><p> ?。?)系統(tǒng)應具備數(shù)據(jù)庫維護功能,及時根據(jù)用戶需求進行數(shù)據(jù)庫的各種操作。</p><p> (5)系統(tǒng)采用原型,實用模塊化程序設計方法,便于系統(tǒng)功能的各種組合和修改,以及系統(tǒng)的測試與維護。<
44、/p><p> ?。?)圖書館管理系統(tǒng)的設計應適合校園的發(fā)展。</p><p> (7)圖書館管理系統(tǒng)的設計應當遵循數(shù)據(jù)庫設計規(guī)范。</p><p><b> 4.2 設計模式</b></p><p> 設計模式是面向?qū)ο蟮某绦蛟O計人員用來解決編程問題的一種形式化表示。本系統(tǒng)開發(fā)采用目前一種廣泛流行的軟件設計模式MVC
45、。MVC(Model—View—Controller)應用程序結(jié)構(gòu)被用來分析分布式應用程序的特征。這種抽象結(jié)構(gòu)能有助于將應用程序分割成若干邏輯部件,使程序設計變得更加容易。把一個應用的輸入、處理、輸出流程按照Model、View、Controller的方式進行分離,這樣一個應用被分成三個層——模型層、視圖層、控制層。</p><p> 圖4-1 MVC模式</p><p> MVC模式
46、的出現(xiàn),很好的解決了傳統(tǒng)開發(fā)WEB應用方式中存在的問題。M代表模型(Model),包含完成任務所需要的所有的行為和數(shù)據(jù);V代表視圖(View)界面,現(xiàn)實模型提供的數(shù)據(jù);C代表控制器(Controller),它將模型映射到界面中,處理用戶的輸入并相應請求。其模型的關(guān)系如圖所示。在MVC模型中,三層各盡其職、相互獨立,各層內(nèi)部的改變不會影響到其它層,從而降低了數(shù)據(jù)表達、數(shù)據(jù)描述和應該操作的耦合度,也能更好的實現(xiàn)開發(fā)中的分工,加速工程進度。&
47、lt;/p><p> 4.3 圖書館管理系統(tǒng)總體功能概述</p><p> 圖書管理系統(tǒng)包含五個模塊分別是:系統(tǒng)登錄、圖書管理、學生管理、借閱信息管理、圖書檢索。</p><p> 系統(tǒng)登錄模塊:一般用戶和管理員都必須登錄才能進入系統(tǒng),用戶登錄時在后臺判斷用戶的權(quán)限類型,分為普通用戶和管理員,普通用戶可以對書籍進行瀏覽及個人借閱信息的查詢,管理員可以對多種信息進行
48、操作。</p><p> 圖書管理模塊:管理員通過驗證界面進入系統(tǒng)后,進入到圖書管理模塊,可以對圖書進行添加,刪除、修改圖書信息、查詢、查看等一系列的操作。</p><p> 學生管理模塊:管理員可以在此模塊中創(chuàng)建新的普通用戶,并且可以對用戶的信息進行修改,刪除等操作。</p><p> 借閱信息管理模塊:這是圖書管系統(tǒng)中最重要的模塊之一,管理員進入該模塊中可
49、以為普通用戶辦理借閱圖書,歸還圖書的功能,并且能夠?qū)崿F(xiàn)還款的操作。</p><p> 圖書檢索模塊:普通用戶通過驗證界面進入系統(tǒng)后,能夠按照書名,作者等多種條件對圖書進行查詢操作,確保查詢到的都是最新的信息。</p><p> 整體系統(tǒng)的功能模塊如圖4-2所示:</p><p> 圖4-2 圖書館管理系統(tǒng)功能圖</p><p> 4.
50、4 圖書館管理系統(tǒng)各功能模塊概述</p><p> 4.4.1 系統(tǒng)登錄模塊</p><p> 用戶進入系統(tǒng)時調(diào)用的一個模塊。該模塊根據(jù)用戶輸入的用戶名、密碼來判斷用戶的類型,跳轉(zhuǎn)到該類用戶的界面。</p><p> 本模塊的功能點包括:</p><p> 判斷用戶名和密碼是否相符;</p><p> 根據(jù)用
51、戶的權(quán)限類型,登錄到系統(tǒng)的制定界面操作使用。</p><p> 登錄功能模塊流程圖如圖4-3所示:</p><p> 圖4-3 登錄模塊流程圖</p><p> 4.3.2 圖書管理模塊</p><p> 在本模塊中圖書館工作人員可以對圖書進行管理操作。</p><p> 本模塊的功能點包括:</p&g
52、t;<p> 新書入庫,將新進圖書按其類型將圖書的基本信息錄入系統(tǒng)數(shù)據(jù)庫; </p><p> 圖書出庫,某一部分圖書會隨著時間的增長及知識的更新而變得不再有收藏的價值,或者圖書被損壞,這些圖書就要在圖書庫中除去。即從圖書庫中刪除此圖書記錄;</p><p> 新書編碼,圖書入庫后,需要貼上條形碼,以便以后提供借閱,本系統(tǒng)不涉及到條形碼閱讀器,只是假定此過程已經(jīng)生成條
53、形碼。編碼只是將條形碼帖于書上以唯一標識圖書;</p><p> 圖書信息修改,圖書信息由于工作人員的疏忽,而出現(xiàn)錄入錯誤,提供其圖書ID就可以查看圖書的基本信息并對其進行修改;</p><p> 圖書管理功能模塊流程圖如圖4-4所示:</p><p> 圖4-4 圖書管理模塊流程圖</p><p> 4.3.3 學生管理模塊<
54、;/p><p> 本模塊主要是工作者對學生信息(讀者借書證信息)進行管理。</p><p> 本模塊的功能點包括:</p><p> 辦理借書證,為新讀者辦理借書證,填寫用戶基本信息;</p><p> 注銷借書證,輸入讀者借書證編號,根據(jù)借書證ID刪除讀者表中此借書證信息;</p><p> 掛失借書證,主要是
55、將借書證的狀態(tài)改為掛失,更新讀者表狀態(tài)字段,有圖書管理員操作;</p><p> 修改圖書證信息,由于工作人員的疏忽,而出現(xiàn)辦理借書證時錄入信息有誤,則可根據(jù)借書證編號對其信息進行查看和修改。</p><p> 借書證管理功能模塊流程圖如圖4-5所示:</p><p> 圖4-5 借書證管理模塊流程圖</p><p> 4.3.4 借
56、閱信息管理模塊</p><p> 本模塊主要是工作者對圖書外借和歸還進行管理。</p><p> 本模塊的功能點包括:</p><p> 圖書借閱,記錄借閱證編號和圖書編號,進行借書過程。在數(shù)據(jù)庫中插入一天借書記錄,該記錄包括圖書ID、借書證ID、借閱日期、歸還日期等;</p><p> 圖書歸還,輸入借書證編號,圖書編號,根據(jù)輸入的
57、編號在借閱登記表中找到相應的記錄,將借閱記錄刪除,并將該記錄相應的數(shù)據(jù)更新到歷史借閱記錄信息表中;</p><p> 查看借閱記錄,可以根據(jù)借書證ID以及圖書ID查詢借閱記錄。</p><p> 辦理還款,如讀者有圖書超期的情況將會有欠款,可以根據(jù)借書證的ID來為讀者班里還款。</p><p> 借閱信息管理功能模塊流程圖如圖4-6所示:</p>
58、<p> 圖4-6 借閱信息管理模塊流程圖</p><p> 4.3.5 圖書檢索模塊</p><p> 使用該模塊的用戶有:讀者和管理員。</p><p> 本模塊的功能點包括:</p><p> 根據(jù)圖書ID進行檢索;</p><p> 根據(jù)圖書名稱進行檢索;</p><
59、;p> 根據(jù)圖書類型進行檢索。</p><p> 根據(jù)圖書作者或譯者進行檢索。</p><p> 圖書檢索功能模塊流程圖如圖4-7所示:</p><p> 圖4-7 圖書檢索模塊流程圖</p><p> 4.4 系統(tǒng)數(shù)據(jù)庫設計</p><p> 4.4.1 概念結(jié)構(gòu)設計</p><
60、p><b> ?。?)實體圖</b></p><p> 學生:學生屬性有學號、姓名、密碼、性別、學院、班級、電話、email、宿舍、地址、已借書數(shù)量、創(chuàng)建日期。學生實體圖如圖4-8所示:</p><p> 圖4-8 學生實體圖</p><p> 圖書:圖書屬性有圖書編號、書名、作者、類別、單價、出版社、出版日期、總數(shù)量、當前數(shù)量、購
61、買日期、內(nèi)容摘要。圖書實體圖如圖4-9所示:</p><p> 圖4-9 圖書實體圖</p><p><b> (2)E—R圖</b></p><p> 根據(jù)以上實體圖,分析了各個實體的屬性,根據(jù)這些屬性,可以得到系統(tǒng)的E—R圖,如圖4-10所示</p><p><b> 1n</b>&
62、lt;/p><p><b> nn</b></p><p><b> 1n</b></p><p> 圖4.8 系統(tǒng)E-R圖</p><p> 4.4.2 邏輯結(jié)構(gòu)設計</p><p> 根據(jù)上述功能模塊的需求,設計如下主要數(shù)據(jù)庫表:</p>&l
63、t;p> 表4.1 圖書信息表(t_book)</p><p> 表4.2 學生信息表 (t_student)</p><p> 表4.3 借閱信息表(t_book_student)</p><p> 表4.4 管理員表(t_admin)</p><p> 表4.5 學院表(t_admin)</p>&
64、lt;p> 表4.6 班級表(t_class)</p><p> 表4.7 圖書類別表(t_admin)</p><p><b> 5 系統(tǒng)實現(xiàn)</b></p><p> 5.1 系統(tǒng)的軟件結(jié)構(gòu)</p><p> 處理靜態(tài)WEB是由Web瀏覽器向Web發(fā)送靜態(tài)頁面, Web服務器直接對發(fā)送的靜態(tài)網(wǎng)頁進行
65、處理。</p><p> 處理動態(tài)WEB數(shù)據(jù)庫查詢的過程是:當Web瀏覽器向Web服務器發(fā)送請求時,動態(tài)網(wǎng)頁的處理流程是,屏蔽掉HTML語言,只輸入動態(tài)網(wǎng)頁文件,由Web服務器向數(shù)據(jù)庫中傳遞信息,經(jīng)過數(shù)據(jù)庫的處理返回數(shù)據(jù)集,Web應用服務器再把含有程序代碼的動態(tài)網(wǎng)頁轉(zhuǎn)換為靜態(tài)網(wǎng)頁返還給Web瀏覽器。這就是用動態(tài)網(wǎng)頁對數(shù)據(jù)庫進行查詢并將數(shù)據(jù)返還給瀏覽器處理的全過程,具體見圖5-1所示。</p>&l
66、t;p> 圖5-1數(shù)據(jù)庫查詢示意圖</p><p> 5.2 登錄系統(tǒng)模塊的實現(xiàn)</p><p> 本模塊主要是用戶通過圖書館管理系統(tǒng)的首頁進入該系統(tǒng)。用戶輸入正確的用戶名和密碼,如果登錄信息有錯誤,則系統(tǒng)提示登錄錯誤信息,并且禁止系統(tǒng)用戶進行任何操作。若登錄信息正確,系統(tǒng)會根據(jù)用戶的身份進行相應權(quán)限的判斷,讀者進入前臺系統(tǒng),管理員進入后臺系統(tǒng)。圖書館系統(tǒng)登錄主頁面如圖5-2所
67、示。</p><p> 圖5-2 圖書館管理系統(tǒng)登錄界面</p><p><b> 其實現(xiàn)的代碼如下:</b></p><p><b> Action層:</b></p><p> public String login() {</p><p> boolean f
68、lag = iss.login(admin);</p><p> if(flag) { return "success"; }</p><p> message = "用戶名或口令錯誤!";</p><p> return "fail";</p><p><b>
69、 }</b></p><p><b> Service層:</b></p><p> public boolean login(TAdmin admin) {</p><p> TAdmin a = isd.login(admin);</p><p> if(a != null) { retur
70、n true;}</p><p> return false;</p><p><b> }</b></p><p><b> Dao層:</b></p><p> public TAdmin login(TAdmin admin) {</p><p> Ses
71、sion session = this.getHibernateTemplate().getSessionFactory().openSession();</p><p> Query q = session.createQuery("from TAdmin a where a.adminName = ? and a.adminPassword = ?").setString(0, admi
72、n.getAdminName()).setString(1, admin.getAdminPassword());</p><p> TAdmin a = (TAdmin)q.uniqueResult();</p><p><b> return a;</b></p><p><b> }</b></p>
73、<p> 5.3 圖書管理模塊的實現(xiàn)</p><p> 圖書管理模塊主要分為圖書入庫、查看圖書、統(tǒng)計圖書,其中圖書入庫是往圖書管理數(shù)據(jù)庫中添加圖書信息。看圖書功能中可以查看圖書詳細信息,并對圖書信息進行修改或刪除某些廢棄圖書信息。</p><p> 5.3.1 圖書入庫功能的實現(xiàn)</p><p> 點擊添加圖書功能,填寫圖書基本信息,為圖書選擇
74、類型,類型是與數(shù)據(jù)庫交互動態(tài)生成的下拉列表,具體界面如圖5-3所示。</p><p> 圖5-3 圖書入庫界面</p><p><b> 其實現(xiàn)的代碼如下:</b></p><p> public String addInfoBook() {</p><p> this.sortList = ibs.listBo
75、okSort();</p><p> return "add";</p><p><b> }</b></p><p> public List<TSort> listBookSort() {</p><p> return this.getHibernateTemplate().
76、find("from TSort tsort");</p><p><b> }</b></p><p> public String addSaveBook() {</p><p> ibs.saveBook(book);</p><p> book = null;</p>&
77、lt;p> bookList = this.listBook();</p><p> return "Book";</p><p><b> }</b></p><p> public void saveBook(TBook book) {</p><p> Date now = ne
78、w Date();</p><p> book.setBuyDate(now);</p><p> book.setCurrentNum(book.getTotalNum());</p><p> ibd.saveBook(book);</p><p><b> }</b></p><p>
79、; public void saveBook(TBook book) {this.getHibernateTemplate().save(book);</p><p><b> }</b></p><p> 5.3.2 圖書維護功能的實現(xiàn)</p><p> 點擊圖書維護功能,展示所有圖書的信息列表,在每個圖書信息行后提供刪除和修改操
80、作功能,并且可以單擊選定某一個圖書信息后的詳細信息進行詳細查看圖書信息。具體圖書列表界面如圖5-4所示</p><p> 圖5-4 圖書列表界面</p><p><b> 其實現(xiàn)的代碼如下:</b></p><p> public String listAllBook() {</p><p> bookList
81、= this.listBook();</p><p> return "Book";</p><p><b> }</b></p><p> public List<TBook> listBook(TBook book, Page page) {</p><p> String h
82、ql = "from TBook tb where 1=1";</p><p> if(book!=null) {</p><p> if(book.getBookNum() != null && !"".equals(book.getBookNum().trim())) {</p><p> hql =
83、 hql + " and tb.bookNum = '" + book.getBookNum()+"'";</p><p><b> }</b></p><p> if(book.getBookName() != null && !"".equals(book.getBoo
84、kName().trim())) {</p><p> hql = hql + " and tb.bookName = '" + book.getBookName()+"'";</p><p><b> }</b></p><p> if(book.getWriter() != nu
85、ll && !"".equals(book.getWriter().trim())) { hql = hql + " and tb.writer = '" + book.getWriter()+"'"; }</p><p> if(!book.getSortId().getSortId().trim().equals(
86、"-1")) {</p><p> hql = hql + " and tb.sortId.sortId = '" + book.getSortId().getSortId()+"'";</p><p><b> }</b></p><p> hql = hql
87、+ " order by tb.bookName";</p><p><b> } else {</b></p><p> hql = hql + " order by tb.buyDate desc";</p><p><b> }</b></p><p&
88、gt; Session session = this.getHibernateTemplate().getSessionFactory().openSession();</p><p> Query q = session.createQuery(hql);</p><p> q.setFirstResult(page.getStartRow());</p><p
89、> q.setMaxResults(5);</p><p> List<TBook> list = q.list();</p><p> return list;</p><p><b> }</b></p><p> (1)刪除圖書功能的實現(xiàn)</p><p> 管
90、理員刪除圖書,刪除時可刪除一個,也可同時多選刪除,</p><p><b> 其實現(xiàn)的代碼如下:</b></p><p> public String deleteOneBook() {</p><p> ibs.delBookById(bookNum);</p><p> bookList = this.lis
91、tBook();</p><p> return "Book";</p><p><b> }</b></p><p> public String deleteMoreBook() {</p><p> ibs.delMoreBook(bookNums);</p><p&
92、gt; bookList = this.listBook();</p><p> return "Book"; </p><p><b> }</b></p><p> public void delBookById(String bookNum) {</p><p> this.getHi
93、bernateTemplate().delete(this.getHibernateTemplate().get(TBook.class, bookNum)); </p><p><b> }</b></p><p> public void delMoreBook(String[] bookNums) {</p><p> for(in
94、t i=0; i<bookNums.length;i++) {</p><p> this.getHibernateTemplate().delete(this.getHibernateTemplate().get(TBook.class, bookNums[i]));}</p><p><b> }</b></p><p> (
95、2)修改圖書信息功能的實現(xiàn)</p><p> 在管理員修改圖書信息時,跳轉(zhuǎn)到圖書信息詳細表單中,列出所要修改圖書的詳細信息,并可以進行修改,則修改界面如圖5-5所示。</p><p> 圖5-5 修改圖書信息界面</p><p><b> 其實現(xiàn)的代碼如下:</b></p><p> public String
96、modifyInfoBook() {</p><p> this.sortList = ibs.listBookSort();</p><p> book = ibs.queryOneBookById(bookNum);</p><p> return "modifyInfo";</p><p><b>
97、 }</b></p><p> public String modifySaveBook() {</p><p> ibs.modifyBook(book);</p><p> book = null;</p><p> bookList = this.listBook();</p><p> r
98、eturn "Book";</p><p><b> }</b></p><p> public TBook queryOneBookById(String bookNum) {</p><p> TBook book = (TBook)this.getSession().createQuery("from
99、TBook tb where tb.bookNum = ?").setString(0, bookNum).uniqueResult();</p><p> this.getSession().close();</p><p> return book;</p><p><b> }</b></p><p&g
100、t; public void modifyBook(TBook book) {</p><p> this.getHibernateTemplate().update(book);</p><p><b> }</b></p><p> ?。?)查看圖書詳細信息功能的實現(xiàn)</p><p> 在管理員點擊詳細信息時
101、,跳轉(zhuǎn)到某圖書信息詳細表單中,列出所選圖書的詳細信息,則顯示界面如圖5-6所示。</p><p> 圖5-6圖書詳細信息界面</p><p><b> 其實現(xiàn)的代碼如下:</b></p><p> public String infoDetailBook() {</p><p> book = ibs.query
102、OneBookById(bookNum);</p><p> return "Detail";</p><p><b> }</b></p><p> public TBook queryOneBookById(String bookNum) {</p><p> TBook book = (
103、TBook)this.getSession().createQuery("from TBook tb where tb.bookNum = ?").setString(0, bookNum).uniqueResult();</p><p> this.getSession().close();</p><p> return book;</p><
104、;p><b> }</b></p><p> 5.4 學生管理模塊的實現(xiàn)</p><p> 學生管理模塊主要分為添加學生、查看學生、修改學生,查看學生的詳細信息。 </p><p> 5.4.1 學生添加功能的實現(xiàn)</p><p> 點擊添加學生,填寫學生基本信息,具體界面如圖5-7所示。</p&g
105、t;<p> 圖5-7辦理借書證界面</p><p><b> 其實現(xiàn)的代碼如下:</b></p><p> public String addInfoStudent() {</p><p> this.academyList = iss.listAllAcademy();</p><p> re
106、turn "add";</p><p><b> }</b></p><p> public void addStudent(TStudent student) {</p><p> Date now = new Date();</p><p> student.setCreateDate(n
107、ow);</p><p> student.setLendedNum(0);</p><p> isd.saveStudent(student);</p><p><b> }</b></p><p> public List<TAcademy> listAllAcademy() {</p>
108、;<p> return this.getHibernateTemplate().find("from TAcademy ta");</p><p><b> }</b></p><p> public List<TClass> listAllClass() {</p><p> retur
109、n this.getHibernateTemplate().find("from TClass tc");</p><p><b> }</b></p><p> public void saveStudent(TStudent student) {</p><p> this.getHibernateTemplate
110、().save(student);</p><p><b> }</b></p><p> 5.4.2 學生維護功能的實現(xiàn)</p><p> 點擊學生維護功能,展示所有讀者的信息列表,在每個讀者信息行后提供刪除和修改操作功能,并且可以單擊選定某一個讀者信息后的詳細信息進行詳細查看讀者信息。具體讀者列表界面如圖5-8所示</p>
111、<p> 圖5-8 讀者列表界面</p><p><b> 其實現(xiàn)的代碼如下:</b></p><p> public String listAllStudent() {</p><p> studentList = this.getStudentListByPage();</p><p> re
112、turn "Student";</p><p><b> }</b></p><p> public List<TStudent> listAllStudent(Page page) {</p><p> Session session = this.getHibernateTemplate().getSe
113、ssionFactory().openSession();</p><p> Query q = session.createQuery("from TStudent ts");</p><p> q.setFirstResult(page.getStartRow());</p><p> q.setMaxResults(5);</p
114、><p> List<TStudent> list = q.list();</p><p> return list;</p><p><b> }</b></p><p> (1)刪除學生功能的實現(xiàn)</p><p> 管理員刪除讀者,刪除時可刪除一個,也可同時多選刪除。<
115、/p><p><b> 其實現(xiàn)的代碼如下:</b></p><p> public String deleteOneStudent() {</p><p> iss.deleteOneStudent(studentNum);</p><p> studentList = this.getStudentListByPa
116、ge();</p><p> return "Student";</p><p><b> }</b></p><p> public String deleteMoreStudent() {</p><p> iss.deleteMoreStudent(studentNums);</p
117、><p> studentList = this.getStudentListByPage();</p><p> return "Student";</p><p><b> }</b></p><p> public void deleteOneStudent(String studentNu
118、m) {</p><p> this.getHibernateTemplate().delete(this.getHibernateTemplate().get(TStudent.class, studentNum));</p><p><b> }</b></p><p> public void deleteMoreStudent(S
119、tring[] studentNums) {</p><p> for(int i=0;i<studentNums.length;i++) {</p><p> this.getHibernateTemplate().delete(this.getHibernateTemplate().get(TStudent.class, studentNums[i]));</p>
120、<p><b> }</b></p><p><b> }</b></p><p> (2)修改學生信息功能的實現(xiàn)</p><p> 在管理員修改學生信息時,跳轉(zhuǎn)到學生信息詳細表單中,列出所要修改學生的詳細信息,并可以進行修改,則修改界面如圖5-9所示。</p><p> 圖
121、5-9 修改讀者信息界面</p><p><b> 其實現(xiàn)的代碼如下:</b></p><p> public String modifyInfoStudent() {</p><p> this.student = iss.getStudentByid(studentNum);</p><p> this.ac
122、ademyList = iss.listAllAcademy();</p><p> this.classList = iss.listClassById(student.getAcademyId().getAcademyId());</p><p> return "modifyInfo";</p><p><b> }<
123、/b></p><p> public String modifySaveStudent() {</p><p> iss.modifyStudentByid(student);</p><p> student = null;</p><p> studentList = this.getStudentListByPage()
124、;</p><p> return "Student";</p><p><b> }</b></p><p> public TStudent getStudentByid(String studentNum) {</p><p> return (TStudent)this.getHibe
125、rnateTemplate().get(TStudent.class, studentNum);</p><p><b> }</b></p><p> public void modifyStudentByid(TStudent student) {</p><p> this.getHibernateTemplate().update
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 圖書館網(wǎng)絡設計課程設計
- 圖書館系統(tǒng)課程設計
- 圖書館建設課程設計
- 圖書館布局課程設計
- 圖書館布局課程設計
- 圖書館管理系統(tǒng)課程設計
- 課程設計--圖書館管理系統(tǒng)
- 圖書館管理系統(tǒng)課程設計
- 圖書館管理系統(tǒng)課程設計報告
- c語言課程設計--圖書館系統(tǒng)
- 圖書館管理信息------系統(tǒng)課程設計
- jsp課程設計《圖書館管理系統(tǒng)》
- sqlserver課程設計——圖書館管理系統(tǒng)
- 圖書館管理系統(tǒng)課程設計報告
- 軟件課程設計--圖書館管理系統(tǒng)
- 圖書館管理系統(tǒng)課程設計報告
- vfp圖書館管理系統(tǒng)課程設計
- java課程設計----圖書館管理系統(tǒng)
- javaweb課程設計——圖書館管理系統(tǒng)
- java課程設計——圖書館管理系統(tǒng)
評論
0/150
提交評論