2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  圖書館管理系統(tǒng)</b></p><p>  專 業(yè) 電子信息科學與技術</p><p>  姓 名 </p><p>  學 號 </p><p>  指 導 教 師

2、 </p><p>  完 成 時 間 2014-06 </p><p>  摘要:在這個信息高速發(fā)展的社會,計算機的快速發(fā)展大大提高了人們的工作效率。同時,計算機信息處理系統(tǒng)的引入改變了很多系統(tǒng)的經(jīng)營管理。圖書館管理系統(tǒng)是學校管理機制中的重要組成部分,為了實現(xiàn)圖書館管理系統(tǒng)的基本功能,設計了此系統(tǒng),它可以解決學校圖書管理事務中的常用基本問題以及相

3、關統(tǒng)計工作。包含6個功能模塊:系統(tǒng)設置,讀者管理,圖書管理,圖書借還,系統(tǒng)查詢和更改口令。使用了jsp進行網(wǎng)頁界面的設計,采用了開源框架Struts1,在Windows XP或Windows7下,以MySQL為數(shù)據(jù)庫開發(fā)平臺,Tomcat網(wǎng)絡信息服務作為應用服務器,采用JSP(Java Server Pages)技術開發(fā)了圖書館管理系統(tǒng)。主要實現(xiàn)了5個方面的功能:1.登錄,分為管理員和普通用戶;2.用戶管理,對用戶進行查詢,可修改用戶的

4、當前狀態(tài)和相關信息,并可對用戶進行刪除處理;3.圖書管理,主要實現(xiàn)書庫的管理和書籍的管理,包括書庫的建立和刪除,新書的入庫和廢書的刪除等;4.借閱管理,包括書籍借閱和書籍歸還的管理;5.讀者管理,可以刪除或更新本圖書館的讀者。通過系統(tǒng)的測試,實現(xiàn)了登錄,用戶管理,圖書管理,借閱管理等功能</p><p>  關鍵詞:圖書管理;MySQL;jsp;truts1</p><p>  Abstr

5、act:In the high-speed development of the information society, the astonishing rapid development of the computer industry has been improving people's working efficiency greatly.The introduction of computerized informa

6、tion system has sharply changed the management in many systems in many fields. The management system of the library takes an important role in the administration of school organization. In order to achieve the basic func

7、tions of library management system designed for this system</p><p>  Keywords: book management; MySQL; jsp; struts1</p><p><b>  目 錄</b></p><p><b>  1 緒論1</b&

8、gt;</p><p>  1.1 系統(tǒng)設計的目的和意義1</p><p>  1.2 國內外的發(fā)展狀況1</p><p>  1.3 可行性分析2</p><p>  2 開發(fā)環(huán)境的配置3</p><p>  2.1 jdk的安裝與配置3</p><p>  2.2 tomca

9、t服務器的安裝4</p><p>  2.3 MySQL數(shù)據(jù)庫5</p><p>  2.4 MyEclipse 8.55</p><p>  3 數(shù)據(jù)庫的創(chuàng)建和設計6</p><p>  3.1 數(shù)據(jù)庫設計概述6</p><p>  3.2 數(shù)據(jù)庫設計的過程10</p><p&

10、gt;  4 系統(tǒng)模塊的設計和實現(xiàn)12</p><p>  4.1 系統(tǒng)總體結構設計和模塊功能12</p><p>  4.2 登錄模塊程序設計13</p><p>  4.3 系統(tǒng)管理員功能模塊的實現(xiàn)14</p><p>  4.4 讀者管理功能模塊的實現(xiàn)15</p><p>  4.5 查詢功能模塊的實

11、現(xiàn)16</p><p>  4.6 圖書管理功能模塊的實現(xiàn)19</p><p>  4.7 圖書借還功能模塊的實現(xiàn)20</p><p><b>  5 總結23</b></p><p>  5.1 工作成果23</p><p>  5.2 收獲體會23</p><

12、p><b>  參考文獻24</b></p><p><b>  致 謝25</b></p><p><b>  1 緒論</b></p><p>  1.1 系統(tǒng)設計的目的和意義</p><p>  圖書館管理系統(tǒng)主要是一個供內部人員使用的系統(tǒng)。而圖書館的工作

13、人員也分為兩類,一類是操作人員,主要負責圖書的借閱和歸還的工作;一類是管理員,除了操作人員的所有功能外,還能夠對書籍列表、書籍信息、讀者信息等進行管理。次要是要實現(xiàn)學生和教師可以快捷方便的借閱書籍。</p><p>  隨著計算機的廣泛應用,其逐步成為現(xiàn)代化的標志。圖書館或者一些企業(yè)內部,甚至是書店,在正常運行的過程中總是面對大量的讀者信息,書籍信息以及兩者相互作用產(chǎn)生的借書信息,還書信息。因此需要對讀者資源,書

14、籍資源,借書信息,還書信息進行管理,及時了解各個環(huán)節(jié)中信息的變更,要對因此而產(chǎn)生的單據(jù)進行及時的處理,為了提高圖書館或者企業(yè)內部對圖書存銷的自動化的管理,能夠更快速地滿足讀者的要求,提高各種工作效率,現(xiàn)對其設計相應的系統(tǒng),以達到上述的目的。</p><p>  圖書館管理系統(tǒng)的主要功能是實現(xiàn)圖書館圖書的借閱和歸還的管理自動化,圖書新增及銷毀的及時化,用戶及圖書信息的更新,圍繞這些主要功能,本系統(tǒng)涉及到以下核心功能

15、:借閱管理,歸還管理,圖書管理,學生管理。除了這些核心功能外,還包括一些基本和輔助的功能,它們是:圖書信息管理,查詢功能等。</p><p>  該系統(tǒng)設計的主要目標是:</p><p>  設計一個圖書館管理系統(tǒng),該系統(tǒng)主要功能分為圖書查詢、圖書借閱歸還和圖書管理三大部分。在圖書查詢模塊中要求用戶能在瀏覽器中分別書名、著譯者、類型等條件查詢;在圖書管理模塊中要求能完成如辦理借書證(即添加

16、新學生)、新書錄入、借書還書的登記、圖書的修改等日常管理功能。</p><p>  1.2 國內外的發(fā)展狀況</p><p>  過去我們以開架借閱滿足讀者閱讀書本的愿望。但在傳統(tǒng)的借閱方式下,很難達到讀者對圖書的要求。同時圖書館需要大量的人員來對圖書進行管理,又要對借閱者及借出書籍進行登記,工作麻煩又雜亂,浪費了很多的人力物力及財力?,F(xiàn)如今以計算機網(wǎng)絡為手段的信息傳遞具有高速度、高效率的

17、特點,是任何手工操作都無法比較的,電子技術與圖書館工作的結合,實現(xiàn)了圖書館管理和服務的現(xiàn)代化。利用圖書管理系統(tǒng),可以激活館藏中的各種圖書,使讀者從主題,各種角度檢索圖書的愿望得到實現(xiàn)。方便,快捷的檢索方式縮短了尋找所需圖書的時間,使讀者擺脫了很大的困擾,大大提高了搜索效率,加速了圖書的開發(fā)利用[1]。</p><p>  上個世紀90年代,美國科學家首次提出數(shù)字圖書館(Digital Library)這一概念以來

18、,在一些先進的西方國家,數(shù)字圖書館的定位,建立,應用都已經(jīng)比較成熟[2]。而其應用價值,則更多體現(xiàn)在教育領域。數(shù)字圖書館教育涉及圖書、情報學、計算機、網(wǎng)絡、法律、經(jīng)濟、行為學、倫理學等學科和領域[3]。理論和實踐性緊密結合,不僅在理論上涉及面廣,而且在實踐操作方面對學生提出了較高的要求。而且,數(shù)字圖書館教育是動態(tài)的,它需要根據(jù)不同的受教育者施行不同層次的教育內容,隨著數(shù)字圖書館理論和實踐研究的不斷深入而要對課程內容進行更新[4]。<

19、;/p><p>  數(shù)字圖書館是伴隨著互聯(lián)網(wǎng)發(fā)展而產(chǎn)生的一個正在成長的新生事物[5]。目前,世界中許多發(fā)達國家都在抓緊數(shù)字圖書館的建設,數(shù)字圖書館已成為國際高科技競爭中新的制高點,成為評價一個國家信息基礎設施水平的重要標志[6]。對我國來說,數(shù)字圖書館的建設可以建立以中文信息為主的各種信息資源,互聯(lián)網(wǎng)上中文信息缺乏的狀況就可以得到解決,形成中華文化在互聯(lián)網(wǎng)上的整體優(yōu)勢。數(shù)字圖書館還是保存和延續(xù)發(fā)展民族文獻遺產(chǎn)的最佳手

20、段,所有的珍貴資料都可以經(jīng)數(shù)字化處理后[7],將原件保存在更適宜的環(huán)境中,而數(shù)字化的資料由于實現(xiàn)原件的復制,并不影響一般的查閱。因此,加快中國數(shù)字圖書館建設勢在必行[8]。</p><p><b>  1.3 可行性分析</b></p><p>  1.3.1 技術可行性</p><p>  開發(fā)軟件的目的是使其具有強大的實用價值,對于圖書館管

21、理系統(tǒng)來說,就是它可以滿足中小型圖書館的借閱與管理的需要。這種管理軟件對硬件的要求很低,一般有一個比較簡單的服務器與PC機組成的網(wǎng)絡即可,再加上使用比較廉價、性能不錯的軟件,這樣就可以以較低的成本來實現(xiàn)一個足夠使用的功能,而這種模式也正滿足了那種中小型資料室,圖書館的要求。就我們目前所學習的知識來開發(fā)這樣一款極具實用性的軟件是沒有任何問題的,能使用 MySQL創(chuàng)建數(shù)據(jù)庫,會使用開發(fā)工具MyEclipse,可以在Macromedia Dr

22、eamweaver中設計界面等。有了這些技術做保障,圖書館管理系統(tǒng)的實現(xiàn)就成為可能[2]。</p><p>  1.3.2 經(jīng)濟可行性 </p><p>  根據(jù)成本/效益分析法,本系統(tǒng)所需的軟硬件資源都已具備,該系統(tǒng)簡單易懂,具有成本相對較低、利益高的特點,經(jīng)濟上是可行的。</p><p>  1.3.3 操作可行性 </p><p>  

23、本系統(tǒng)開發(fā)的開發(fā)宗旨是以便捷為中心。開發(fā)后的系統(tǒng)應具有美觀、大方、簡單、易操作等優(yōu)點,即使是不懂計算機的人員也可以根據(jù)系統(tǒng)提示使用和管理本系統(tǒng),它的操作簡單的特點使本系統(tǒng)在操作上是可行的。</p><p>  2 開發(fā)環(huán)境的配置</p><p>  系統(tǒng)使用了jsp進行網(wǎng)頁界面的設計,采用了開源框架Struts1,以MySQL為數(shù)據(jù)庫開發(fā)平臺,Tomcat網(wǎng)絡信息服務作為應用服務器,采用

24、JSP(Java Server Pages)技術開發(fā)了圖書館管理系統(tǒng)。目前,網(wǎng)絡應用軟件運行的模式主要有兩類:客戶機/服務器(C/S)模式和瀏覽器/服務器(B/S)模式。利用Web技術,實現(xiàn)Web服務器與數(shù)據(jù)庫系統(tǒng)的連接,進行對數(shù)據(jù)的處理。這種從瀏覽器到服務器的數(shù)據(jù)處理結構就是目前在Internet中十分流行的B/S模式(Browser/Server)。本圖書管理系統(tǒng)就是應用B/S模式進行開發(fā)的。下來就具體介紹開發(fā)環(huán)境的配置[7]。&l

25、t;/p><p>  2.1 jdk的安裝與配置</p><p>  本系統(tǒng)用到的是JDK1.6,在安裝好JDK1.6后需要設置環(huán)境變量。具體操作如下:</p><p> ?。?)、右擊計算機點屬性,進入高級系統(tǒng)設置,點擊環(huán)境變量,會出現(xiàn)如圖2-1:</p><p><b>  圖2-1 環(huán)境變量</b></p>

26、;<p> ?。?)、點擊系統(tǒng)變量里的新建按鈕,會出現(xiàn)圖2-2</p><p>  圖2-2 新建系統(tǒng)變量</p><p> ?。?)、添加變量名CLASSPATH,變量值</p><p>  .:JAVA_HOME%\LIB\dt.jar:%JAVA_HOME%\lib\tools.jar</p><p>  變量名 JAVA

27、_HOME,變量值為jdk的安裝路徑</p><p>  變量名Path, 變量值 %JAVA_HOME%\BIN</p><p>  (4)、在開始菜單下,運行中輸入cmd,在cmd中輸入javac,將會出現(xiàn)圖2-3,說明jdk安裝成功。</p><p>  圖2-3 jdk測試程序</p><p>  2.2 to

28、mcat服務器的安裝</p><p>  圖書館管理系統(tǒng)用到的是tomcat6.0.18,它的作用是實現(xiàn)系統(tǒng)在網(wǎng)頁上的顯示。安裝步驟很簡單,一步步來就可以。在運行tomcat時,看到時表示正在運行,看到時表示還未啟動,點開,點擊start按鈕即可。Tomcat服務器是Apache Group Jakarta小組開發(fā)的一個免費服務器軟件,適合于嵌入Apache中使用,而且,它的源代碼可以免費獲得,你可以自由地對它進

29、行擴充。Tomcat服務器的兼容性很好,有眾多大軟件的公司的支持,而且服務器的性能穩(wěn)定,其發(fā)展前景很好。</p><p>  Tomcat受到了程序員的廣泛熱愛,因為它運行占用的系統(tǒng)資源小,擴展性好,支持郵件服務與負載平衡等開發(fā)應用系統(tǒng)的常用功能;而且它還在不斷的改進和完善中,任何一個愛好編程的人都可以更改它或在其中加入新的功能。</p><p>  2.3 MySQL數(shù)據(jù)庫</p

30、><p>  使用MySQL作為數(shù)據(jù)庫開發(fā)工具。MySQL是一個小型的關系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB公司。在2008年1月16號被Sun公司收購。目前MySQL被廣泛地應用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。</p><p>  2.4 M

31、yEclipse 8.5</p><p>  MyEclipse企業(yè)級工作平臺(MyEclipseEnterprise Workbench ,簡稱MyEclipse)是對EclipseIDE的擴展,利用它我們可以在數(shù)據(jù)庫和JavaEE的開發(fā)、發(fā)布以及應用程序服務器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調試、測試和發(fā)布功能,完整支持HTML,Struts,JSP,

32、CSS,Javascript,</p><p>  Spring,SQL,Hibernate。在本系統(tǒng)中,程序代碼都是在MyEclipse 8.5中編譯和實現(xiàn)的。</p><p>  3 數(shù)據(jù)庫的創(chuàng)建和設計</p><p>  3.1 數(shù)據(jù)庫設計概述</p><p>  數(shù)據(jù)庫是整個系統(tǒng)的基礎,數(shù)據(jù)庫設計的好壞直接影響到整個系統(tǒng)設計的成敗,

33、本節(jié)對數(shù)據(jù)庫的設計進行解釋[6]。</p><p>  數(shù)據(jù)庫是目前數(shù)據(jù)管理的最新技術。十幾年來數(shù)據(jù)庫管理系統(tǒng)已從專用的應用程序發(fā)展為通用的系統(tǒng)軟件。由于數(shù)據(jù)庫具有強大的數(shù)據(jù)結構化,最低冗余度,較高的程序與數(shù)據(jù)獨立性,易于擴充和擴展,易于編制應用程序等優(yōu)點,較大的信息系統(tǒng)都是建立在數(shù)據(jù)庫設計之上的。因此不僅大型計算機及中小型計算機,甚至微型機都配有數(shù)據(jù)庫管理系統(tǒng)。</p><p>  數(shù)據(jù)

34、庫系統(tǒng)的出現(xiàn)使信息系統(tǒng)從以加工數(shù)據(jù)的程序為中心轉向圍繞共享的數(shù)據(jù)庫為中心的新階段。這樣既便于數(shù)據(jù)的集中管理,又有利于應用程序的研制和維護,提高了數(shù)據(jù)的利用性和相容性,提高了決策的可靠性。目前,數(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ù)庫及

35、其應用的性能都建立在良好的數(shù)據(jù)庫設計的基礎之上,數(shù)據(jù)庫的數(shù)據(jù)是一切操作的基礎,如果數(shù)據(jù)庫設計不好,那么其它一切用于提高數(shù)據(jù)庫性能的方法收效都是有限的。數(shù)據(jù)庫設計的關鍵是如何使設計的數(shù)據(jù)庫能合理地存儲用戶的數(shù)據(jù),方便用戶進行數(shù)據(jù)處理。</p><p>  設計數(shù)據(jù)庫必須遵循一定的規(guī)則,在關系型數(shù)據(jù)庫中,這種規(guī)則就是范式,范式是符合某一種級別的關系模式的集合。一般人們設計數(shù)據(jù)庫遵循第三范式。即:數(shù)據(jù)庫表中不包含已在其

36、他表中包含的非主關鍵字信息。采用范式減少了數(shù)據(jù)冗余,節(jié)約了存儲空間,同時加快了增、刪、改的速度[6]。</p><p>  整個系統(tǒng)所包括的信息有圖書信息、讀者信息、留言信息、圖書借閱信息、圖書歸還信息、系統(tǒng)用戶信息、讀者類型信息??蓪⑦@些信息抽象為下列系統(tǒng)所需要的數(shù)據(jù)項和數(shù)據(jù)結構:</p><p>  1.圖書信息(編號[pk],圖書名稱,圖書類型,作者,譯者,ISBN號,價格,出版社,

37、所在書架,入庫時間,操作員)</p><p>  2.圖書類型(編號[pk],名稱,可借閱天數(shù))</p><p>  3.讀者信息(編號[pk],姓名,性別,條形碼,讀者類型,出生年月,有效證件,證件號碼,登記日期,電話,郵箱,操作員)</p><p>  4.讀者類型(名稱[pk],可借閱圖書本數(shù))</p><p>  5.圖書借閱信息(圖

38、書編號[pk],讀者ID,借出時間,應還時間,是否歸還,操作員)</p><p>  6.圖書歸還信息(圖書編號[pk],讀者ID,歸還時間,操作員)</p><p>  7.用戶(編號[pk],用戶名稱,密碼)</p><p>  8.圖書館信息(編號[pk],名稱,館長,電話,地址,郵箱,創(chuàng)建日期,簡介)</p><p>  圖書館參數(shù)信

39、息(編號[pk],辦證費用,有效期限)</p><p><b>  注:pk表示主鍵</b></p><p><b>  圖書信息表結構設計</b></p><p>  圖書信息表主要用于存儲圖書館中所藏圖書的相關信息,其中的相關信息是在圖書入庫時由操作員進行添加完善,此表主要用于讀者和圖書管理員對館中圖書的查詢,系統(tǒng)用戶

40、根據(jù)圖書的某個屬性進行查詢,便可得知圖書的其他相關信息,其中圖書所在書架屬性是便于讀者借閱時對圖書的尋找,圖書價格是在讀者不慎將圖書遺失時對遺失圖書進行賠償?shù)囊罁?jù)。表的具體結果如表3-1:</p><p>  表3-1 圖書信息表(tb_bookinfo)</p><p>  圖書類型信息表結構設計</p><p>  該表的設計主要是方便對圖書的分類,和對圖書的查

41、詢,在實際應用中圖書管理員就是根據(jù)圖書類型的不同將之分列在不同的書架,以方便讀者的借閱尋找,其中可借閱天數(shù)項設置了不同類型圖書的借閱期限,可根據(jù)圖書的具體情況進行不同的維護管理,表的具體結構設計如下表3-2:</p><p>  表3-2 圖書類型信息表(tb_booktype) </p><p><b>  讀者信息表結構設計</b></p><

42、p>  讀者信息表的設計是為了圖書館管理員對讀者進行管理,其中讀者ID,不同類型證件的號碼都是唯一的,是讀者在借閱圖書時需要輸入對讀者身份進行識別的信息,讀者郵件電話等信息室為了與讀者進行聯(lián)系,讀者類型信息決定了讀者一次性可借閱的圖書的數(shù)量,注冊時間可用于查詢計算讀者身份有效的期限,操作員是為了便于對信息才操作的查詢。表的具體結構設計如表3-3:</p><p>  表3-3 讀者信息表(tb_reader

43、)</p><p>  讀者類型信息表結構設計</p><p>  此表的設計是為了對不同身份的讀者進行分類方便讀者的管理,其中可借閱圖書數(shù)量的屬性設定,是根據(jù)讀者需求的不同對起權限進行的設置,用于規(guī)定不同類型讀者一次可借閱的圖書數(shù)量,表的具體結構設計如表3-4:</p><p>  表3-4 讀者類型信息表(tb_readertype)</p>&

44、lt;p>  圖書借閱信息表結構設計</p><p>  該表的設計是用于對讀者借閱圖書進行管理,表中圖書ID屬性是對借閱圖書的唯一性識別標識,讀者ID號記錄借閱的相應讀者,結出時間記錄了相應的歸還時間,是否歸還標識可查詢當起讀書是否被歸還,表的具體結構設計如表3-5:</p><p>  表3-5 圖書借閱信息表 (tb_borrow)</p><p>  

45、圖書歸還信息表結構設計</p><p>  圖書歸還信息表的設計除了像上表一樣把借閱的圖書與相應的借閱者進行對應的聯(lián)系以外還記錄了讀者應歸還圖書的時間,具體結構設計如下:</p><p>  表3-6 圖書歸還信息表(tb_giveback)</p><p>  圖書館信息表結構設計</p><p>  該表包含了圖書館的名稱,地址,聯(lián)系方式

46、,建館時間,簡介等信息,是對圖書館基本屬性信息的描述,方便外界讀者對圖書館的了解,表的具體結構設計如下:</p><p>  表3-7 圖書館信息表 (tb_library )</p><p>  辦證參數(shù)信息表結構設計</p><p>  該表是為校外人員設計的,對于需要到圖書館進行借閱的讀者可辦理臨時的借閱證用于對圖書的借閱憑證,表中包含了辦證所需費用以及證件的

47、有效期限,表的具體結果設計如下:</p><p>  表3-8 圖書證參數(shù)信息表(tb_parameter)</p><p>  3.2 數(shù)據(jù)庫設計的過程</p><p>  1.在Powerdesigner中設計數(shù)據(jù)表; </p><p>  2.創(chuàng)建各表之間的依賴關系,如圖3-1:</p><p>  圖3-1 數(shù)

48、據(jù)表之間的關系</p><p>  3.導出數(shù)據(jù)庫腳本文件;</p><p>  4.在MySQL中創(chuàng)建數(shù)據(jù)庫;</p><p>  5在MySQL中導入數(shù)據(jù)庫腳本,完成數(shù)據(jù)表的創(chuàng)建。</p><p>  4 系統(tǒng)模塊的設計和實現(xiàn)</p><p>  4.1 系統(tǒng)總體結構設計和模塊功能</p><

49、p>  系統(tǒng)使用了Dreamweaver 8進行網(wǎng)頁界面的設計,采用了開源框架Struts1,以MySQL為數(shù)據(jù)庫開發(fā)平臺,Tomcat網(wǎng)絡信息服務作為應用服務器,采用JSP(Java Server Pages)技術開發(fā)了圖書館管理系統(tǒng)[10] [12]。</p><p>  圖書館管理系統(tǒng)總體結構圖</p><p>  繪制系統(tǒng)結構圖的過程,實際上就是對系統(tǒng)功能模塊進行分解設計的過

50、程,即合理地將數(shù)據(jù)流程圖轉變?yōu)樗枰南到y(tǒng)結構圖。</p><p>  系統(tǒng)結構圖將會使讀者和用戶能直觀的了解系統(tǒng)的結構模式,理解系統(tǒng)的各個功能的結構,能很好地方便用戶使用和理解整個系統(tǒng)。</p><p>  本系統(tǒng)的結構圖4-1如下:</p><p>  圖4-1圖書館管理系統(tǒng)總體結構圖</p><p>  根據(jù)需求分析的結果,本系統(tǒng)將劃分

51、為以下主要功能模塊:系統(tǒng)管理員功能模塊,讀者管理功能模塊,圖書管理功能模塊,圖書借還功能模塊,系統(tǒng)查詢功能模塊。</p><p><b>  系統(tǒng)管理員模塊功能</b></p><p>  該模塊主要包括圖書館信息設置,用戶管理,參數(shù)設置,書架設置。</p><p><b>  1.圖書館信息設置</b></p>

52、;<p>  該功能選項用于系統(tǒng)管理員對圖書館名稱,地址,聯(lián)系方式,簡介等信息的管理更新,以便于讀者和外界人士對圖書館的了解。該功能是對td_library表進行維護修改等操作,修改后的信息將被保存在該表中。</p><p><b>  2.用戶設置</b></p><p>  該功能子模塊主要是系統(tǒng)管理員對系統(tǒng)用戶的管理,通過此子模塊的功能實現(xiàn)可以對用

53、戶進行添加、修改、刪除、權限設置等操作,該子模塊能將圖書館的不同工作細化到不同的相關人員,極大地提高了圖書館的工作效率。該操作是對tb_users表進行操作,在對用戶進行了相關的操作后把操作后的最新信息存放在該表中。</p><p><b>  3.圖書館參數(shù)設置</b></p><p>  通過該子模塊設置在圖書館辦理臨時讀者證的費用及證件有效期限。該操作是對于tb

54、_parameter表進行,并把操作后的最新數(shù)據(jù)存放在該表中。</p><p><b>  讀者管理模塊功能</b></p><p>  該模塊主要包含讀者類型管理和讀者信息管理兩個子模塊:</p><p><b>  讀者類型管理</b></p><p>  該子模塊是對圖書館系統(tǒng)用戶讀者的類型進

55、行維護,修改等操作,在此模塊中主要設置不同類型讀者一次性可借閱的圖書的數(shù)量,該操作是對于tb_readerType表進行,并將操作結果保存在該表中。</p><p><b>  讀者信息管理</b></p><p>  該子模塊是對讀者的基本信息進行管理,可以對讀者的基本信息進行添加,修改,刪除操作,這下操作均是對tb_reader表進行的,并將操作后的結果保存在該表

56、中。</p><p>  4.2 登錄模塊程序設計</p><p>  本模塊主要是用戶通過圖書管理系統(tǒng)的首頁登錄進入該系統(tǒng)。用戶輸入正確的用戶名和密碼,系統(tǒng)會根據(jù)用戶的身份進行相應權限劃分;如果登錄信息有錯誤,則系統(tǒng)提示登入錯誤的信息,并且禁止系統(tǒng)用戶進行任何操作。圖書借閱管理系統(tǒng)的登錄主頁面如圖4-2所示。</p><p>  圖4-2 圖書管理系統(tǒng)登錄首頁&l

57、t;/p><p>  其登陸的主要代碼如下:</p><p>  function check(form){</p><p>  if (form.name.value==""){</p><p>  alert("請輸入用戶名稱!");form.name.focus();return false;<

58、/p><p><b>  }</b></p><p>  if (form.pwd.value==""){</p><p>  alert("請輸入密碼!");form.pwd.focus();return false;</p><p><b>  }</b>&

59、lt;/p><p><b>  }</b></p><p>  用戶在登錄頁面寫好用戶名和密碼,選擇登錄,登錄成功則跳轉到系統(tǒng)的首頁,否則提示錯誤信息。</p><p>  4.3 系統(tǒng)管理員功能模塊的實現(xiàn)</p><p>  本模塊中最主要的是管理系統(tǒng)用戶,設置圖書館的信息等操作,其中管理系統(tǒng)用戶包括對它們進行添加,修改,

60、刪除及權限劃分操作。</p><p>  其中系統(tǒng)管理員讀系統(tǒng)用戶進行管理的操作頁面如圖4-3所示:</p><p>  圖4-3 系統(tǒng)管理員管理用戶操作界面</p><p>  其中對系統(tǒng)用戶權限的設置是該操作的重要部分也是系統(tǒng)提高效率的關鍵,其具體代碼為:</p><p>  private ActionForward managerMo

61、dify(ActionMapping mapping, ActionForm form,</p><p>  HttpServletRequest request, HttpServletResponse response) {</p><p>  ManagerForm managerForm = (ManagerForm) form;</p><p>  man

62、agerForm.setId(managerForm.getId()); //獲取并設置管理員ID號</p><p>  managerForm.setName(managerForm.getName()); //獲取并設置管理員名稱</p><p>  managerForm.setPwd(managerForm.getPwd()); //獲取并設置管理員密碼</p&

63、gt;<p>  managerForm.setSysset(managerForm.getSysset());//獲取并設置系統(tǒng)設置權限</p><p>  managerForm.setReaderset(managerForm.getReaderset()); //獲取并設置讀者管理權限</p><p>  managerForm.setBookset(manager

64、Form.getBookset()); //獲取并設置圖書管理權限</p><p>  managerForm.setBorrowback(managerForm.getBorrowback());//獲取并設置圖書借還權限</p><p>  managerForm.setSysquery(managerForm.getSysquery()); //獲取并設置系統(tǒng)查詢權限</p

65、><p>  int ret = managerDAO.update(managerForm); //調用設置管理員權限的方法</p><p>  if (ret == 0) {</p><p>  request.setAttribute("error", "設置管理員權限失敗!");//保存錯誤提示信息到erro

66、r參數(shù)中</p><p>  return mapping.findForward("error"); //轉到錯誤提示頁面</p><p><b>  } else {</b></p><p>  return mapping.findForward("managerModify");//轉

67、到權限設置成功頁面</p><p><b>  }}</b></p><p>  4.4 讀者管理功能模塊的實現(xiàn)</p><p>  讀者管理主要實現(xiàn)對讀者的類型管理和信息管理兩個功能模塊,其中讀者類型管理中需要設置不同類型讀者一次性可借閱圖書的數(shù)量,讀者信息管理則主要管理維護讀者的基本信息,其各自界面如下所示:</p><

68、p>  1) 讀者類型管理功能界面如圖4-4:</p><p>  圖4-4 讀者類型管理操作界面</p><p>  2)讀者信息管理功能界面如圖4-5:</p><p>  圖4-5 讀者信息管理界面</p><p>  該管理功能在設置讀者信息時需要輸入讀者姓名,性別,條形碼,選擇讀者類別,有效證件,證件號碼,電話,e-mail等

69、信息。其中的姓名,性別,條形碼,證件號碼是必填選項。</p><p>  4.5 查詢功能模塊的實現(xiàn)</p><p>  查詢功能模塊包括圖書查詢,讀者借閱查詢和借閱到期提醒三個子功能模塊。</p><p>  1) 圖書查詢可根據(jù)圖書的條形碼,書名,作者,出版社等不同信息進行查詢,其操作界面圖如圖4-6所示:</p><p>  圖4-6

70、圖書查詢操作界面</p><p>  實現(xiàn)該功能中根據(jù)讀者不同需求的按條件查詢實現(xiàn)語句如下:</p><p>  public Collection query(String strif){</p><p>  BookForm bookForm=null;</p><p>  Collection bookColl=new ArrayLis

71、t();</p><p>  String sql="";</p><p>  if(strif!="all" && strif!=null && strif!=""){</p><p>  sql="select * from (select b.*,c.name

72、 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 on b.typeid=t.id where b.del=0) as book where bo

73、ok."+strif+"'";</p><p><b>  }else{</b></p><p>  sql="select b.*,c.name as bookcaseName,p.pubname as publishing,t.typename from tb_bookinfo b left join tb_book

74、case 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";</p><p><b>  }</b></p><p>  System.out.println("圖書查詢時的SQL

75、:"+sql);</p><p>  ResultSet rs=conn. executeQuery (sql);</p><p><b>  try {</b></p><p>  while (rs.next()) {</p><p>  bookForm=new BookForm();</p>

76、<p>  bookForm.setBarcode(rs.getString(1)); </p><p>  bookForm.setBookName(rs.getString(2));</p><p>  bookForm.setTypeId(rs.getInt(3));</p><p>  bookForm.setAuthor(rs.g

77、etString(4));</p><p>  bookForm.setTranslator(rs.getString(5));</p><p>  bookForm.setIsbn(rs.getString(6));</p><p>  bookForm.setPrice(Float.valueOf(rs.getString(7))); //此處必須進行類型轉換

78、</p><p>  bookForm.setPage(rs.getInt(8));</p><p>  bookForm.setBookcaseid(rs.getInt(9));</p><p>  bookForm.setInTime(rs.getString(10));</p><p>  bookForm.setOperator(rs

79、.getString(11)); </p><p>  bookForm.setDel(rs.getInt(12)); </p><p>  bookForm.setId(Integer.valueOf(rs.getString(13)));</p><p>  bookForm.setBookcaseName(rs.getString(14)

80、);</p><p>  bookForm.setPublishing(rs.getString(15));</p><p>  bookForm.setTypeName(rs.getString(16));</p><p>  bookColl.add(bookForm);</p><p><b>  }</b><

81、;/p><p>  } catch (SQLException ex) {</p><p>  ex.printStackTrace();</p><p><b>  }</b></p><p>  conn.close();</p><p>  return bookColl;</p>

82、<p><b>  }</b></p><p>  2)借閱查詢子模塊是對圖書當前狀態(tài)和讀者當前的借閱情況進行查詢,具有此權限的用戶登錄并進入該操作界面后選中相應的查詢條件,并輸入相應的查詢信息,系統(tǒng)即可在頁面顯示被查詢的圖書的狀態(tài),或相應讀者的當起借閱情況,此外,還可以輸入相應時間段內的所有借閱清單,或選擇某個讀者查詢他在某個時間段內的借閱情況,查詢某個時間段內的此子功能操作界

83、面如圖4-7:</p><p>  圖4-7借閱查詢操作界面</p><p>  系統(tǒng)中同時選中日期和限制條件進行查詢時,程序是在條件查詢的基礎上選中符合時間條件限制的內容,其實現(xiàn)代碼為:</p><p>  if (flag.length == 2) {</p><p>  if (request.getParameter("f&

84、quot;) != null) {</p><p>  str = request.getParameter("f") + " like '%" +</p><p>  request.getParameter("key") + "%'";</p><p><b&g

85、t;  }</b></p><p>  System.out.println("日期和條件");</p><p>  String sdate = request.getParameter("sdate");</p><p>  String edate = request.getParameter("e

86、date");</p><p>  String str1 = null;</p><p>  if (sdate != null && edate != null) {</p><p>  str1 = "borrowTime between '" + sdate + "' and '

87、" + edate +</p><p><b>  "'";</b></p><p><b>  }</b></p><p>  str = str + " and borr." + str1;</p><p>  System.out.pr

88、intln("條件和日期:" + str);</p><p><b>  }</b></p><p>  3) 借閱到期提醒子模塊是將系統(tǒng)當前時間與應歸還的時間進行比較,如果系統(tǒng)當前時間以超過圖書應歸還時間,相應的讀者借閱信息便會被顯示在借閱到期提醒界面,其界面如圖4-8:</p><p>  圖4-8 借閱到期提醒<

89、/p><p>  4.6 圖書管理功能模塊的實現(xiàn)</p><p>  與讀者管理模塊類似,圖書管理模塊也分為圖書類型管理和圖書檔案管理兩個子模塊,其中圖書類型管理功能處理將圖書分類提高管理效率外還設置了不同類型圖書可借閱的天數(shù),對不同類型圖書進行區(qū)別管理,圖書檔案管理是管理維護圖書館藏書的基本信息。這兩個子模塊的操作界面為:</p><p>  1) 圖書類型管理界面如

90、圖4-9:</p><p>  圖4-9 圖書類型管理界面</p><p>  2) 圖書檔案管理界面如圖4-10:</p><p>  圖4-10 圖書檔案管理界面</p><p>  圖書檔案中包含圖書的條形碼,圖書名稱,圖書類型,作者,譯者,價格,出版社,所在書架等圖書基本信息,其中作者,譯者,頁碼是備選信息,可以不填。</p&g

91、t;<p>  4.7 圖書借還功能模塊的實現(xiàn)</p><p>  1)圖書借閱。該子模塊實現(xiàn)系統(tǒng)的借閱功能,讀者向圖書管理員提供自己的編號會顯示出讀者當起的借閱情況,再提供要借閱的圖書標號,借閱成功,其操作界面如圖4-11:</p><p>  圖4-11 圖書借閱操作界面</p><p>  如果在借閱時所要借閱的圖書不存在或者讀者借閱已達借閱圖書

92、的上線,則讀者不能接續(xù)借閱圖書,系統(tǒng)將給出相應提示,此功能的實現(xiàn)代碼為:</p><p>  private ActionForward bookborrow(ActionMapping mapping, ActionForm form,</p><p>  HttpServletRequest request,</p><p>  HttpServletRespo

93、nse response){</p><p><b>  //查詢讀者信息</b></p><p>  //此處一定不能使用該語句進行轉換</p><p>  readerForm.setBarcode(request.getParameter("barcode"));</p><p>  Reade

94、rForm reader = (ReaderForm) readerDAO.queryM(readerForm);</p><p>  request.setAttribute("readerinfo", reader);</p><p>  //查詢讀者的借閱信息</p><p>  request.setAttribute("bor

95、rowinfo",borrowDAO.borrowinfo(request.getParameter("barcode")));</p><p><b>  //完成借閱</b></p><p>  String f = request.getParameter("f");</p><p>  

96、String key = request.getParameter("inputkey");</p><p>  if (key != null && !key.equals("")) {</p><p>  String operator = request.getParameter("operator");&l

97、t;/p><p>  BookForm bookForm=bookDAO.queryB(f, key);</p><p>  if (bookForm!=null){</p><p>  int ret = borrowDAO.insertBorrow(reader, bookDAO.queryB(f, key),</p><p>  opera

98、tor);</p><p>  if (ret == 1) {</p><p>  request.setAttribute("bar", request.getParameter("barcode"));</p><p>  return mapping.findForward("bookborrowok"

99、;);</p><p><b>  } else {</b></p><p>  request.setAttribute("error", "添加借閱信息失敗!");</p><p>  return mapping.findForward("error");</p>

100、<p><b>  }</b></p><p><b>  }else{</b></p><p>  request.setAttribute("error", "沒有該圖書!");</p><p>  return mapping.findForward("er

101、ror"); }</p><p><b>  }</b></p><p>  return mapping.findForward("bookborrow");</p><p><b>  }</b></p><p>  2)圖書歸還。該子模塊實現(xiàn)

102、系統(tǒng)的圖書歸還功能,讀者向圖書管理員提供自己的編號會顯示出讀者當起的借閱情況,再提供要歸還的圖書標號,圖書管理員將信息記錄在系統(tǒng)中,歸還成功,其操作界面如圖4-12:</p><p>  圖4-12 圖書歸還操作界面</p><p><b>  5 總結</b></p><p><b>  5.1 工作成果</b><

103、;/p><p>  在MyEclipse的開發(fā)環(huán)境下,以J2EE為開發(fā)平臺,運用JSP網(wǎng)絡編程語言和Struts框架和MySQL數(shù)據(jù)庫完成了B/S模式的圖書館借閱管理系統(tǒng)。系統(tǒng)基本上實現(xiàn)了預期的各項功能,達到了任務書中的主要設計內容的各個任務,整個系統(tǒng)也在經(jīng)過測試和反復更改能夠順利運行。實現(xiàn)了開題報告中的需求設計在程序編寫,該系統(tǒng)能夠實現(xiàn):</p><p>  1.用戶在本系統(tǒng)的中可實現(xiàn)按照各

104、種方式(如:書名,編號,作者)查詢圖書館的藏書請客,方便的借閱圖書,續(xù)借圖書,歸還圖書,能夠查詢自己的借閱圖書情況。</p><p>  2.圖書館工作人員能夠實現(xiàn)方便的對圖書進行查詢,方便的進行用戶借閱情況查詢,方便的進行借書還書處理等,方便的對圖書信息進行添加、修改、刪除,分類管理等操作,對讀者信息進行相關添加,修改和分類管理等操作。</p><p>  3.系統(tǒng)管理員可以對圖書館信息

105、進行修改更新等操作,對系統(tǒng)用戶進行添加、修改、刪除、權限設置等操作,對圖書館的辦證參數(shù)進行修改維護等操作功能。</p><p><b>  5.2 收獲體會</b></p><p>  經(jīng)過三個月的不斷學習和設計開發(fā),再加上老師同學的幫助,終于完成了我的畢業(yè)設計題目“圖書館管理系統(tǒng)”的開發(fā),在開題報告階段我閱讀了大量的中外文獻,對所開發(fā)系統(tǒng)的現(xiàn)狀,國際發(fā)展情況以及未來

106、發(fā)展趨勢有了深入的了解; 在整個系統(tǒng)的需求分析過程中對開發(fā)前期工作地流程步驟有了深入的掌握;在開發(fā)過程我進一步學習了Java的基礎語法,和一些網(wǎng)頁設計美工方面的知識,以便使系統(tǒng)有更好的美觀性,在編寫過程中也規(guī)范了許多編碼習慣,數(shù)據(jù)庫設計階段我嘗試了幾個不同版本的數(shù)據(jù)庫,它們在配置操作上各有不同,又各有優(yōu)缺點,在它們的一些基本操作上也有了進一步提高。在配置開發(fā)工具過程中對Tomcat和MyEclipse的連接部署有了清晰地認識,對開發(fā)We

107、b程序的步驟框架頁有了總體性認識。</p><p>  在整個系統(tǒng)開發(fā)的過程中,我學到了很多新的知識,以前學過的許多知識點在運用過程中也有了更為深入的分析,這是我大學期間做過的規(guī)模最大的項目,在這個過程中也體會到了如何將書本知識轉化到實際的應用中。</p><p><b>  參考文獻</b></p><p>  [1] 王立福. 軟件工程(第

108、二版)[M]. 北京:北京大學出版社.2002.</p><p>  [2] 張秋余,楊玥. 基于用例的需求建模方法[J]. 計算機工程與設計,2006,19:3539-3541.</p><p>  [3] MattheMacDonal.管理信息系統(tǒng)[J].電子工業(yè)出版社.2003.Vol.3(8):102-108. </p><p>  [4] 張秋余,楊玥.

109、基于用例的需求建模方法[J]. 計算機工程與設計,2006,19:3539-3541.</p><p>  [5] John W. Satzinger, Robert B. Jackson, Stephen D. Burd. [Z]. 北京:人民郵電出版社, 2008.</p><p>  [6] 王珊,薩師炫.數(shù)據(jù)庫系統(tǒng)概論(第三版)[M]. 北京:高等教育出版社.2002</p&

110、gt;<p>  [7] 張海潘.軟件工程[J].清華大學出版社.2003年11月</p><p>  [8] 張波. 網(wǎng)絡答疑系統(tǒng)的設計與實現(xiàn)[D]. 長春:吉林大學軟件學院,2005.</p><p>  [9] 陸榮幸,郁洲. J2EE平臺上MVC設計模式的研究與實現(xiàn)[J]. 計算機應用研究,2003,03:144-146.</p><p>  

111、[10] 孫衛(wèi)琴,李洪稱. Tomcat與Java Web開發(fā)技術詳解[M]. 北京:電子工業(yè)出版社,2003.</p><p>  [11] Marty Hall,Larry Brown著,趙學良譯. Servlet與JSP核心編程(第2版)[M]. 北京:清華大學出版社,2004.</p><p>  [12] 戴繼周. 基于Web的網(wǎng)絡教學平臺的設計與實現(xiàn)[D]. 長春:吉林大學計算

112、機應用技術專業(yè),2004.</p><p><b>  致 謝</b></p><p>  很用心的做完了畢業(yè)設計,因為它是我大學的最后一次作業(yè)了。完成了它,我大學生活接近尾聲了?;叵胛业乃哪甑拇髮W生活,真的有很多的收獲和感觸。在這里的四年時間我從一個懵懂的少年成長為一個懂事懂禮的人,在這里我不但學到了文化知識,實踐動手能力,更形成了我的許多價值觀,學會了許多做人

113、做事的道理,除了自己的成長和收獲不說,我真的很像感謝很多人。</p><p>  首先,我要感謝我的父母,是您們的支持與鼓勵是我順利的讀完了我的大學;是你們的教導和點播使我在迷茫的時候不迷失自我;是你們的言傳身教使我懂得了如何與人為善,真愛身邊的人;是你們的實時適度的糾正,使我順利成長不斷進步;是你們寬和仁和的處事為人,塑造了我豁達開朗的性格,謝謝你們,我親愛的爸爸媽媽。</p><p>

114、  還有,我要感謝我的畢業(yè)設計指導老師王博老師,是您嚴謹?shù)闹螌W,適時的督促,不斷地知道使我順利完成了我的畢業(yè)設計,在整個畢業(yè)設計期間您不斷地給與我?guī)椭椭笇刮也恢煌瓿闪宋业脑O計任務還學的了很多相關的專業(yè)知識,老師不但經(jīng)驗豐富知識領域寬廣而且和善可親,在完成畢設的過程中,您不但教授了我很多知識,還為我的未來發(fā)展學業(yè)工作提出了寶貴的意見,我們不但是親切的師生,也是彼此的朋友,在我整個畢業(yè)設計的指導過程中您給我的印象就是認真負責,在這里我想

115、對我可敬可親的王老師說一聲:“謝謝!”</p><p>  其次,非常感謝我的同學們當我在畢業(yè)設計過程中遇到問題和困難時,是你們給我提出許多關鍵性的意見和建議,使我對整個畢業(yè)設計的思路有了總體的把握,并耐心的幫我解決了許多實際問題,使我受益匪淺。</p><p>  最后,要謝謝我的母校對我的教育,我將以更加飽滿的熱情投入到以后的工作中去,充實自己,完善自己,向著自己的目標不斷地前進,用我

溫馨提示

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

評論

0/150

提交評論