基于Web的圖書管理系統(tǒng)的設(shè)計與實現(xiàn)修改稿_第1頁
基于Web的圖書管理系統(tǒng)的設(shè)計與實現(xiàn)修改稿_第2頁
基于Web的圖書管理系統(tǒng)的設(shè)計與實現(xiàn)修改稿_第3頁
基于Web的圖書管理系統(tǒng)的設(shè)計與實現(xiàn)修改稿_第4頁
基于Web的圖書管理系統(tǒng)的設(shè)計與實現(xiàn)修改稿_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、基于web的圖書管理系統(tǒng)的設(shè)計與實現(xiàn)基于web的圖書管理系統(tǒng)的設(shè)計與實現(xiàn)摘 要隨著時代的發(fā)展,在現(xiàn)代中小型圖書管理系統(tǒng)中,如何方便快捷地為用戶提供服務(wù)、提高圖書的利用率等問題變得越來越突出。借助網(wǎng)絡(luò),在圖書管理和用戶之間建立一個交互的電子平臺,將大大提高中小型圖書管理的管理水平和現(xiàn)代化程度。 圖書管理系統(tǒng)正是趨于這個目標而設(shè)計,主要實現(xiàn)了5個方面的功能:1.圖書查詢,對圖書進行查詢,可查詢書本的當前狀態(tài)和相關(guān)信息;2.借閱管理,包括書籍借閱和書籍歸還的管理;3.圖書管理,主要實現(xiàn)書庫的管理和書籍的管理,包括書庫的建立和刪除,新書的入庫和廢書的刪除等;4.會員管理,是對會員信息和借閱進行管理;5

2、.系統(tǒng)管理,是對系統(tǒng)的權(quán)限管理。系統(tǒng)設(shè)計突出充分利用jsp技術(shù)的mvc設(shè)計模式、j2ee開發(fā)中流行的組合框架ssh(strust+spring+hibernate)技術(shù)和mysql數(shù)據(jù)庫技術(shù)設(shè)計和實現(xiàn)了一個基于web的圖書管理系統(tǒng)。系統(tǒng)要解決的圖書管理所要解決的問題,可以滿足圖書管理基本要求,包括添加、修改刪除管理等功能。系統(tǒng)能根據(jù)用戶的需求,快捷方便的為讀者提供借閱服務(wù)。關(guān)鍵詞: 圖書管理,mvc,框架,ssh,mysql數(shù)據(jù)庫the library management system based on web of design and implementationabstract:wit

3、h the development in modern small library management system, how to quickly and easily provide users with services, enhancing the utilization of other issues become more prominent. with the network, the library management and user interaction between a e-platform will greatly enhance the management

4、of small and medium level of library management and modernization. library management system is designed to tend to this end, the main achievement of the five functional areas: one. book inquiries, check books, check books can be the current status and related information; two. lending management, i

5、ncluding the lending library, and books returned to the management; three. library management, the main stacks of the management and implementation of management books, including the stack room of the building and removed, new books, book storage and waste removal, etc.; four. member of management,

6、is a member of loan for information and management; five. system management is a system of rights management. system design using jsp database development tools and mysql5.0 to develop the library management system. library management system to be solved to solve the problem of library management to

7、 meet the basic requirements, including add, modify, remove management. system according to user needs, provide readers with fast and convenient loan services. keywords: literature management system; information management; jsp第一章 系統(tǒng)需求分析1.1引言隨著計算機技術(shù)的飛速發(fā)展,計算機在企業(yè)管理中應(yīng)用的普及,利用計算機實現(xiàn)圖書信息的管理勢在必行。目前圖書管理的借閱工作

8、部分大多數(shù)還是手工管理,工作效率很低,并且不能及時了解圖書的種類和用戶比較需求的圖書等,不能更好的適應(yīng)當前讀者的借閱要求。手工管理還存在這許多弊端,由于不可避免的人為因素,造成數(shù)據(jù)的遺漏、誤報。計算機信息化管理有著儲存量大,速度快等許多優(yōu)點,提供給我們的處理信息及時快捷,因此我們利用計算機提供給我們的信息對讀者的借閱過程形成一整套動態(tài)的管理能夠極大地提高圖書管理管理的效率,這也是圖書管理的科學化、正規(guī)化管理,與世界接軌的重要條件。1.2 開發(fā)環(huán)境在開發(fā)圖書館管理系統(tǒng)時,需要具備下面的軟件環(huán)境。服務(wù)器端: 操作系統(tǒng):windows sever 2003 web服務(wù)器:tomcat5.5 java

9、開發(fā)包:jdk 1.5以上,jre1.6. 數(shù)據(jù)庫:mysql 5.0.37 瀏覽器:ie6.0以上版本 分辨率:最佳效果為1024 x 768 客戶端: 瀏覽器:ie 6.0 分辨率:最佳效果 1024 x 768像素 1.3 系統(tǒng)需求分析系統(tǒng)的主要目的是實現(xiàn)一個圖書管理系統(tǒng)。系統(tǒng)有2 類用戶分別為管理員、讀者會員。管理員經(jīng)口令認證進人系統(tǒng)后,管理員可完成維護系統(tǒng)的功能, 包括管理圖書和管理會員。讀者會員則完成查詢圖書、修改個人資料、查詢個人借閱信息的功能, 工作完成后可以退出系統(tǒng)。1.3.1功能需求描述隨著圖書的日益增多,傳統(tǒng)的手工圖書管理不僅工作量大,而且容易出現(xiàn)問題。圖書管理設(shè)計的內(nèi)容

10、非常復(fù)雜而且繁多,比如擁有圖書信息錄入管理、用戶信息管理、圖書借閱管理和歸還管理,圖書的查詢和修改等。由于系統(tǒng)主要是為方便管理員定制開發(fā)的,因此針對圖書管理的實際工作而言,經(jīng)過了反復(fù)地論證,最終確定了圖書管理系統(tǒng)的設(shè)計方案,圖書管理系統(tǒng)的主要功能為:(1) 用戶登錄。管理員或會員根據(jù)工作證和密碼登錄系統(tǒng)進行身份驗證。(2) 查詢圖書。登錄系統(tǒng)后進行圖書檢索, 并可以通過點擊圖書名稱查看書本詳細信息??梢圆榭吹綍镜乃行畔⒓敖栝喰畔ⅰ#?) 添加圖書。只有管理員登錄成功后才能添加圖書。通過點擊導(dǎo)航條上的“添加圖書“超鏈接進入添加圖書頁面,填好后點提交, 就進數(shù)據(jù)庫了。(4) 修改圖書。只有管理

11、員登錄成功后才能修改圖書。通過點擊導(dǎo)航條上的“修改圖書“超鏈接進入修改圖書頁面,修改好后點提交, 就進數(shù)據(jù)庫了。(5) 刪除圖書。只有管理員登錄成功后才能修改圖書。通過點擊導(dǎo)航條上的“刪除圖書“超鏈接進入刪除圖書頁面,點刪除就可將書刪除。(6) 修改和查詢個人信息。1.4 性能需求為了保證系統(tǒng)能夠長期、安全、穩(wěn)定、可靠、高效的運行,圖書管理系統(tǒng)應(yīng)該滿足以下的性能需求:1.4.1系統(tǒng)處理的準確性和及時性系統(tǒng)處理的準確性和及時性是系統(tǒng)的必要性能。在系統(tǒng)設(shè)計和開發(fā)過程中,要充分考慮系統(tǒng)當前和將來可能承受的工作量,使系統(tǒng)的處理能力和響應(yīng)時間能夠滿足中小型企業(yè)對信息處理的需求。1.4.2系統(tǒng)的開放性和系

12、統(tǒng)的可擴充性圖書管理系統(tǒng)在開發(fā)過程中,應(yīng)該充分考慮以后的可擴充性。例如用戶查詢的需求也會不斷的更新和完善,都要求系統(tǒng)提供足夠的功能的調(diào)整和擴充。而要實現(xiàn)這一點,應(yīng)通過系統(tǒng)的開放性來完成,既系統(tǒng)應(yīng)是一個開放系統(tǒng),只要符合一定的規(guī)范,可以簡單的加入和減少系統(tǒng)的模塊,配置系統(tǒng)的硬件。通過軟件的修補、替換完成系統(tǒng)的升級和更新?lián)Q代。1.4.3系統(tǒng)的易用性和易維護性圖書管理系統(tǒng)是直接面對使用人員的,而使用人員往往對計算機并不時非常熟悉。這就要求系統(tǒng)能夠提供良好的用戶接口,易用的人機交互界面。要實現(xiàn)這一點,就要求系統(tǒng)應(yīng)該盡量使用用戶熟悉的術(shù)語和中文信息的界面;針對用戶可能出現(xiàn)的使用問題,要提供足夠的在線幫助

13、,縮短用戶對系統(tǒng)熟悉的過程。1.4.4系統(tǒng)的標準性系統(tǒng)在設(shè)計開發(fā)使用過程中都要涉及到很多計算機硬件、軟件。所有這些都要符合主流國際、國家和行業(yè)標準。1.4.5系統(tǒng)的先進性目前計算系統(tǒng)的技術(shù)發(fā)展相當快,做為圖書管理系統(tǒng)工程,在系統(tǒng)的生命周期盡量做到系統(tǒng)的先進,充分完成企業(yè)信息處理的要求而不至于落后。這一方面通過系統(tǒng)的開放性和可擴充性,不斷改善系統(tǒng)的功能完成。另一方面,在系統(tǒng)設(shè)計和開發(fā)的過程中,應(yīng)在考慮成本的基礎(chǔ)上盡量采用當前主流并先進且有良好發(fā)展前途的產(chǎn)品。1.4.6系統(tǒng)的響應(yīng)速度圖書管理系統(tǒng)系統(tǒng)在日常處理中的響應(yīng)速度為秒級,達到實時要求,以及時反饋信息。在進行統(tǒng)計分析時,根據(jù)所需數(shù)據(jù)量的不同而

14、從秒級到分鐘級,原則是保證操作人員不會因為速度問題而影響工作效率。第二章 相關(guān)技術(shù)介紹本系統(tǒng)實現(xiàn),采用現(xiàn)在web開發(fā)最流行的組合框架ssh(strust+spring+hibernate),該框架是基于mvc設(shè)計模式的一個組合框架,系統(tǒng)實現(xiàn)層次分明,action層頁面?zhèn)髦担刂铺D(zhuǎn),service層業(yè)務(wù)服務(wù)層,主要實現(xiàn)業(yè)務(wù)邏輯處理,dao層主要是做數(shù)據(jù)持久層的工作,負責與數(shù)據(jù)庫進行聯(lián)絡(luò)的一些任務(wù)都封裝在此,model層數(shù)據(jù)表與實體類型映射。本系統(tǒng)設(shè)計時,考慮到數(shù)據(jù)庫存儲量大,系統(tǒng)適用對象是中大型旅游運行商,選擇了現(xiàn)在比較流行的mysql數(shù)據(jù)庫作為系統(tǒng)數(shù)據(jù)庫。本章節(jié)將對mvc模式、ssh框架以及

15、mysql數(shù)據(jù)庫等技術(shù)做簡要介紹。2.1 mvc簡介 mvc是一個設(shè)計模式,它強制性的使應(yīng)用程序的輸入、處理和輸出分開。使用mvc應(yīng)用程序被分成三個核心部件:模型model、視圖view、控制器controller。它們各自處理自己的任務(wù)。 視圖是用戶看到并與之交互的界面。對老式的web應(yīng)用程序來說,視圖就是由html元素組成的界面,在新式的web應(yīng)用程序中,html依舊在視圖中扮 演著重要的角色,但一些新的技術(shù)已層出不窮,它們包括macromedia flash和象xhtml,xml/xsl,wml等一些標識語言和web services。如何處理應(yīng)用程序的界面變得越來越有挑戰(zhàn)性。mvc一個

16、大的好處是它能為你的應(yīng)用程序處理很多不同的視圖。在視圖中其實沒有真正的處理發(fā)生,不管這些數(shù)據(jù)是聯(lián)機存儲的還是一個雇員列表,作為視圖來講,它只是作為一種輸出數(shù)據(jù)并允許用戶操縱的方式。模型表示企業(yè)數(shù)據(jù)和業(yè)務(wù)規(guī)則。在mvc的三個部件中,模型擁有最多的處理任務(wù)。例如它可能用象ejbs和coldfusion components這樣的構(gòu)件對象來處理數(shù)據(jù)庫。被模型返回的數(shù)據(jù)是中立的,就是說模型與數(shù)據(jù)格式無關(guān),這樣一個模型能為多個視圖提供數(shù)據(jù)。由于應(yīng)用于模型的代碼只需寫一次就可以被多個視圖重用,所以減少了代碼的重復(fù)性??刂破鹘邮苡脩舻妮斎氩⒄{(diào)用模型和視圖去完成用戶的需求。所以當單擊web頁面中的超鏈接和發(fā)送

17、html表單時,控制器本身不輸出任何東西和做任何處理。它只是接收請求并決定調(diào)用哪個模型構(gòu)件去處理請求,然后再確定用哪個視圖來顯示返回的數(shù)據(jù)。mvc模式三核心部件關(guān)系圖如下圖2-1。 controller user action updatemodel view update notify 圖2-1 mvc模型圖 2.1.1mvc的優(yōu)點低耦合性視圖層和業(yè)務(wù)層分離,這樣就允許更改視圖層代碼而不用重新編譯模型和控制器代碼,同樣,一個應(yīng)用的業(yè)務(wù)流程或者業(yè)務(wù)規(guī)則的改變只需要改動mvc的模型層即可。因為模型與控制器和視圖相分離,所以很容易改變應(yīng)用程序的數(shù)據(jù)層和業(yè)務(wù)規(guī)則。高重用性和可適用性隨著技術(shù)的不斷進步

18、,現(xiàn)在需要用越來越多的方式來訪問應(yīng)用程序。mvc模式允許你使用各種不同樣式的視圖來訪問同一個服務(wù)器端的代碼。它包括任何web(http)瀏覽器或者無線瀏覽器(wap),比如,用戶可以通過電腦也可通過手機來訂購某樣產(chǎn)品,雖然訂購的方式不一樣,但處理訂購產(chǎn)品的方式是一樣的。由于模型返回的數(shù)據(jù)沒有進行格式化,所以同樣的構(gòu)件能被不同的界面使用。例如,很多數(shù)據(jù)可能用html來表示,但是也有可能用wap來表示,而這些表示所需要的命令是改變視圖層的實現(xiàn)方式,而控制層和模型層無需做任何改變。較低的生命周期成本mvc使降低開發(fā)和維護用戶接口的技術(shù)含量成為可能??焖俚牟渴鹗褂胢vc模式使開發(fā)時間得到相當大的縮減,

19、它使程序員(java開發(fā)人員)集中精力于業(yè)務(wù)邏輯,界面程序員(html和jsp開發(fā)人員)集中精力于表現(xiàn)形式上。可維護性分離視圖層和業(yè)務(wù)邏輯層也使得web應(yīng)用更易于維護和修改。有利于軟件工程化管理由于不同的層各司其職,每一層不同的應(yīng)用具有某些相同的特征,有利于通過工程化、工具化管理程序代碼。2.2 ssh框架簡介ssh框架是j2ee開發(fā)的一個流行組合框架,其中ssh是struts+spring+hibernate三個單詞縮寫。(1) s表示層框架struts struts是一個在jsp model2基礎(chǔ)上實現(xiàn)的mvc框架,主要分為模型(model)、視圖(viewer)和控制器(controll

20、er)三部分,其主要的設(shè)計理念是通過控制器將表現(xiàn)邏輯和業(yè)務(wù)邏輯解耦,以提高系統(tǒng)的可維護性、可擴展性和可重用性。(2)s業(yè)務(wù)邏輯層框架spring spring是一個解決了許多j2ee開發(fā)中常見問題并能夠替代ejb技術(shù)的強大的輕量級框架。這里所說的輕量級指的是spring框架本身,而不是指spring只能用于輕量級的應(yīng)用開發(fā)。spring的輕盈體現(xiàn)在其框架本身的基礎(chǔ)結(jié)構(gòu)以及對其他應(yīng)用工具的支持和裝配能力。與ejb這種龐然大物相比,spring可使程序研發(fā)人員把各個技術(shù)層次之間的風險降低。 spring框架的核心是控制翻轉(zhuǎn)ioc(inversion of control)/依賴注入di(depen

21、dence injection)機制。ioc是指由容器中控制組件之間的關(guān)系(這里,容器是指為組件提供特定服務(wù)和技術(shù)支持的一個標準化的運行時的環(huán)境)而非傳統(tǒng)實現(xiàn)中由程序代碼直接操控,這種將控制權(quán)由程序代碼到外部容器的轉(zhuǎn)移,稱為“翻轉(zhuǎn)”3。di是對ioc更形象的解釋,即由容器在運行期間動態(tài)地將依賴關(guān)系(如構(gòu)造參數(shù)、構(gòu)造對象或接口)注入到組件之中3。spring采用設(shè)值注入(使用setter方法實現(xiàn)依賴)和構(gòu)造子注入(在構(gòu)造方法中實現(xiàn)依賴)的機制,通過配置文件管理組建的協(xié)作對象,創(chuàng)建可以構(gòu)造組件的ioc容器。這樣,不需要編寫工廠模式、單例模式或者其他構(gòu)造的方法,就可以通過容器直接獲取所需的業(yè)務(wù)組件。

22、(3)h數(shù)據(jù)持久層框架hibernate o/r mapping技術(shù)是為了解決關(guān)系型數(shù)據(jù)庫和面向?qū)ο蟮某绦蛟O(shè)計之間不匹配的矛盾而產(chǎn)生的。hibernate是目前最為流行的o/r mapping框架,它在關(guān)系型數(shù)據(jù)庫和java對象之間做了一個自動映射,使得程序員可以以非常簡單的方式實現(xiàn)對數(shù)據(jù)庫的操作。ssh框架關(guān)系如下圖2-2。persistencelayer hibernatedatasource/connection pool query languagesupport and other hibernate service bussinesslayer spring transaction

23、hibernatesession managementbusiness service classes uilayer struts-mvc struts actionactionform jspstruts-config.xml etc dao classesservice locator domain model business objects 圖2-2 ssh框架關(guān)系圖2.3 mysql數(shù)據(jù)庫簡介mysql關(guān)系數(shù)據(jù)庫服務(wù)器大約在15年前脫胎于一個公司的內(nèi)部項目,最初由瑞典tcxdatakonsult ab (ab是aktiebolag的縮寫,在瑞典語中表示公司)的員工發(fā)起,這個稱為my

24、sql的項目在1996年底開始公司發(fā)行。該軟件迅速流行起來,所以他們在2001年成立了一家完全致力于mysql服務(wù)和產(chǎn)品的公司,稱為mysqlab。由于一開始就獲利頗豐,mysqlab飛速發(fā)展,在多個國家成立了辦事處,吸引了大量風險投資資金,并開始與很多重量級公司合作,包括red hat、veritas、novell、rackspace。mysql公司的發(fā)展因2008年被sun microsystems收購而終結(jié),而后者則于2009年初被oracle公司買進。從1996年首次發(fā)行開始,mysql的發(fā)開人員就將重點放在了軟件性能和可拓展性上。其結(jié)果是得到了一個高度優(yōu)化的產(chǎn)品,但是缺乏企業(yè)級數(shù)據(jù)庫

25、產(chǎn)品的很多標準特征,例如存儲過程、觸發(fā)器和事務(wù)。然而,該產(chǎn)品仍然吸引了大量的用戶,這些用戶更注重速度和可拓展性,而不那么關(guān)心平常不太使用的功能(隨后的版本又包括了這樣一些特征,并吸引了更多的用戶)。盡管如此,mysql仍有由于一下特點而風靡:使用c和c+編寫,并使用了多種編譯器進行測試,保證源代碼的可移植性;支持aix、freebsd、hp-ux、linux、mac os、novellnetware、openbsd、os/2 wrap、solaris、windows等多種操作系統(tǒng);為多種編程語言提供了api。這些編程語言包括c、c+、python、java、perl、php、eiffel、ru

26、by和tcl等;支持多線程,充分利用cpu資源 ;優(yōu)化的sql查詢算法,有效地提高查詢速度 ;既能夠作為一個單獨的應(yīng)用程序應(yīng)用在客戶端服務(wù)器網(wǎng)絡(luò)環(huán)境中,也能夠作為一個庫而嵌入到其他的軟件中提供多語言支持,常見的編碼如中文的gb 2312、big5,日文的shift_jis等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名 ;提供tcp/ip、odbc和jdbc等多種數(shù)據(jù)庫連接途徑;提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫操作的管理工具;可以處理擁有上千萬條記錄的大型數(shù)據(jù)庫 ;支持多種存儲引擎。2.3 本章技術(shù)小結(jié)本章主要介紹了最新的mvc優(yōu)秀的設(shè)計模式、j2ee開發(fā)的一個流行組合ssh框架,以及mysql數(shù)據(jù)庫。在我的系統(tǒng)

27、開發(fā)過程中,這些技術(shù)都有相應(yīng)的應(yīng)用到我的圖書管理系統(tǒng)中。第三章 系統(tǒng)概要設(shè)計系統(tǒng)概要設(shè)計是系統(tǒng)實現(xiàn)一個重要的前期工作。本章節(jié)將結(jié)合功能設(shè)計、模塊劃分和子模塊功能設(shè)計及流程三個方面對該系統(tǒng)的概要設(shè)計做詳細的說明。3.1 功能設(shè)計本系統(tǒng)是基于b/s模式的旅游管理系統(tǒng)的設(shè)計與實現(xiàn)。系統(tǒng)開發(fā)使用軟件有myeclipse8.5、mysql、dreamwear8.0等,系統(tǒng)功能主要包括登錄,系統(tǒng)設(shè)置,讀者管理,圖書管理,圖書借還,系統(tǒng)查詢等。本系統(tǒng)設(shè)計實現(xiàn)了用戶登錄、系統(tǒng)設(shè)置、讀者管理、圖書管理、圖書借還、系統(tǒng)查詢等模塊。系統(tǒng)模塊結(jié)構(gòu)參考圖3-1。圖書管理系統(tǒng)讀者管理模塊用戶登錄模塊系統(tǒng)設(shè)置模塊更改口令模

28、塊圖書借還模塊圖書管理模塊系統(tǒng)查詢模塊 圖3-1圖書管理系統(tǒng)模塊3.2 模塊具體劃分系統(tǒng)主要劃分為四大模塊,分別是用戶登錄模塊、系統(tǒng)設(shè)置模塊、讀者管理模塊、圖書管理模塊和圖書借還等模塊。其模塊具體劃分參考圖3-2。圖書館管理系統(tǒng)系統(tǒng)設(shè)置讀者管理圖書借還圖書管理圖書館信息管理員設(shè)置讀者類型管理讀者檔案管理圖書類型管理圖書檔案管理圖書借閱圖書歸還系統(tǒng)查詢參數(shù)設(shè)置書架設(shè)置圖書續(xù)借圖書檔案查詢圖書借閱查詢借閱到期提醒更改口令退出系統(tǒng)3-2 圖書管理系統(tǒng)功能模塊具體劃分圖3.3 子模塊功能設(shè)計及流程為了能更好地完成系統(tǒng)實現(xiàn),本文對系統(tǒng)各子模塊功能設(shè)計以及流程做了詳細的說明。3.3.1 登錄模塊用戶輸入用

29、戶密碼,系統(tǒng)驗證,失敗時返回登錄頁面,成功時進入主界面。登陸成功,將用戶信息保存session里,便于用戶信息提取。設(shè)計流程圖參考圖3-3。 用戶登錄訪問login.jsp 信息錄入錯誤提示登錄驗證 error successusersession 進入main.jsp 圖3-3 登錄模塊程序流程3.3.2 系統(tǒng)設(shè)置模塊主要操作:對管理員、書架等的增加、修改、刪除、查詢?;静僮髁鞒虆⒖紙D3-4。操作說明:1、 增加驗證錄入信息是否正確,確認正確,成功后顯示信息列表。2、 修改驗證修改信息是否正確,確認修改,成功后顯示信息列表。3、 刪除選擇刪除項,確認刪除后,刪除選擇數(shù)據(jù),成功后顯示回信息列

30、表。4、 查詢查詢所有的管理員、書架等信息。查詢流程參考圖3-5。系統(tǒng)設(shè)置信息輸入查詢數(shù)據(jù)錄入數(shù)據(jù)修改、刪除數(shù)據(jù)圖3-4 系統(tǒng)設(shè)置基本操作基本操作刪除增加、修改選擇數(shù)據(jù)錄入信息信息判斷錯誤提示刪除判斷錯誤提示 n n y y信息列表信息列表 圖3-5基本操作的程序流程3.3.3 讀者管理模塊主要操作:對讀者信息的維護,包括增、刪、查、改等。程序流程參考圖3-4和圖3-5。3.3.4 圖書管理模塊主要操作:對圖書信息的維護,包括增、刪、查、改等。程序流程參考圖3-4和圖3-5。3.3.4 圖書借還模塊主要操作:對圖書的管理,包括圖書借閱、圖書續(xù)借、圖書歸還等。程序流程參考圖3-6、圖3-7和圖3

31、-8。錄入讀者條形碼選擇圖書輸入圖書的條形碼或書名完成圖書借閱顯示讀者信息 確認確認圖3-6圖書借閱的程序流程顯示該讀者所借的所有書籍錄入讀者條形碼選擇續(xù)借圖書顯示讀者信息 完成圖書續(xù)借圖3-7圖書續(xù)借的程序流程顯示該讀者所借的所有書籍錄入讀者條形碼選擇歸還圖書顯示讀者信息 完成圖書歸還圖3-8圖書續(xù)借的程序流程3.3.4 系統(tǒng)查詢模塊主要操作:對圖書的相關(guān)查詢,包括圖書檔案查詢、圖書借閱查詢、借閱到期提醒等。程序流程參考圖3-9。信息查詢模糊查詢等值查詢選擇條件選擇條件錄入部分信息錄入完整信息錯誤提示查詢判斷查詢判斷錯誤提示 n n y y 查詢查詢結(jié)果信息列表結(jié)果信息列表 圖3-9 查詢操

32、作流程圖第四章 數(shù)據(jù)庫設(shè)計4.1數(shù)據(jù)庫設(shè)計概述 計算機信息系統(tǒng)以數(shù)據(jù)庫為核心,在數(shù)據(jù)庫管理系統(tǒng)的支持下,進行信息的收集、整理、存儲、檢索、更新、加工、統(tǒng)計和傳播等操作。 為了使現(xiàn)實世界的信息流計算機化,并對計算機化的信息進行各種操作,就是如何利用數(shù)據(jù)庫管理系統(tǒng)、系統(tǒng)軟件和相關(guān)硬件系統(tǒng),將用戶的要求轉(zhuǎn)化成有效的數(shù)據(jù)結(jié)構(gòu),并使數(shù)據(jù)庫結(jié)構(gòu)易于實現(xiàn)用戶新的要求的過程。 確切的說,數(shù)據(jù)庫設(shè)計是指對于一個給定的應(yīng)用環(huán)境,提供一個確定最優(yōu)數(shù)據(jù)模型與處理模式的邏輯設(shè)計,以及一個確定數(shù)據(jù)庫存儲結(jié)構(gòu)與存取方法的物理設(shè)計,建立起既能反映現(xiàn)實世界信息和信息聯(lián)系,滿足用戶數(shù)據(jù)要求和加工要求,又能被某個數(shù)據(jù)庫管理系統(tǒng)所接

33、受,同時能實現(xiàn)系統(tǒng)目標,并有效存取數(shù)據(jù)的數(shù)據(jù)庫。 根據(jù)軟件工程的思想,數(shù)據(jù)庫設(shè)計的周期可以劃分為六個階段: 規(guī)劃階段、需求分析階段 、設(shè)計階段、程序編制階段 、調(diào)試階段、運行和維護階段 。數(shù)據(jù)庫設(shè)計是要在一個給定的應(yīng)用環(huán)境(dbms)中,通過合理的邏輯設(shè)計和有效的物理設(shè)計,構(gòu)造較優(yōu)的數(shù)據(jù)庫模式、子模式,建立數(shù)據(jù)庫和設(shè)計應(yīng)用程序,滿足用戶的各種信息需求。物理結(jié)構(gòu)設(shè)計的原則如下:(1) 盡可能的減少數(shù)據(jù)冗余和重復(fù)(2) 結(jié)構(gòu)設(shè)計與操作設(shè)計相結(jié)合(3) 數(shù)據(jù)結(jié)構(gòu)具有相對的穩(wěn)定性。基于以上設(shè)計原則,系統(tǒng)設(shè)計了一個數(shù)據(jù)庫,包含基本信息表(如圖書信息表、系統(tǒng)用戶表等)及幾個實體聯(lián)系建模后的表(如借閱信息表

34、、會員信息表等)。為了加快系統(tǒng)訪問的速度把這些表放在一個數(shù)據(jù)庫中。4.2數(shù)據(jù)字典有了系統(tǒng)的數(shù)據(jù)流圖后,還有相當多的數(shù)據(jù)信息如圖書、借閱、歸還等信息需要進一步描述,這就是需要定義數(shù)據(jù)字典,才能把現(xiàn)有的系統(tǒng)描述清楚。列出系統(tǒng)的主要數(shù)據(jù)字典。名稱:管理員描述:記錄管理員信息定義:管理員信息=管理員id+管理員密碼輸入數(shù)據(jù):管理員信息輸出數(shù)據(jù):管理員信息名稱:圖書信息表結(jié)構(gòu)描述:記錄所有圖書的基本情況定義:圖書信息=圖書編號+isbn號+索引號+圖書類別+圖書名稱+語種+原名+頁碼+作者+價格+出版社+出版時間+登記日期+備注輸入數(shù)據(jù):圖書信息輸出數(shù)據(jù):圖書信息名稱:讀者信息表結(jié)構(gòu)描述:記錄所有讀者的

35、基本情況定義:讀者信息=讀者編號+性別+姓名+類別+身份證號+辦證日期+證有效期+工作單位+e-mail+聯(lián)系電話輸入數(shù)據(jù):讀者信息輸出數(shù)據(jù):讀者信息名稱:借書登記表結(jié)構(gòu)描述:記錄所有圖書的借閱情況定義:借書信息=讀者編號+讀者編號+讀者類別+圖書編號+圖書類別+圖書名稱+原名+作者+出版社+借出日期+應(yīng)還日期輸入數(shù)據(jù):借書信息輸出數(shù)據(jù):借書信息名稱:記錄歸還登記表結(jié)構(gòu)描述:記錄所有圖書的歸還情況定義:歸還信息=讀者編號+讀者編號+讀者類別+圖書編號+圖書類別+圖書名稱+原名+作者+出版社+借出日期+應(yīng)還日期+實還日期+罰款輸入數(shù)據(jù):歸還信息輸出數(shù)據(jù):歸還信息4.3數(shù)據(jù)庫的邏輯設(shè)計在需求分析階

36、段已完成該系統(tǒng)所有的數(shù)據(jù)分析。根據(jù)該階段所建立的概念模型,已經(jīng)得出滿足系統(tǒng)設(shè)計要求的幾個關(guān)系描述,該階段的主要工作就是把前一階段的成果轉(zhuǎn)化為具體的數(shù)據(jù)庫。下面給出概念結(jié)構(gòu)設(shè)計得e-r圖。1:管理員實體e-r圖: 管理員密碼用戶id圖4.1 管理員實體e-r圖2:會員信息實體e-r圖:編號電話讀者 姓名條形碼電子郵件職業(yè)類型 圖4.2 讀者實體e-r圖3:圖書信息實體e-r圖:出版日期 條形碼 圖書 登記日期編號出版社名稱類別 數(shù)量 價格作者 圖4.3 圖書實體e-r圖4:借書信息實體e-r圖:出版 讀者編號 借書 讀者姓名書籍類別書籍編號應(yīng)還日期 借出日期書籍名稱書籍作者讀者類別 圖4.4 借

37、書實體e-r圖6:還書信息實體e-r圖:實還日期 讀者編號 還書操作員 讀者姓名書籍類別書籍編號應(yīng)還日期書籍名稱 借出日期讀者類別 書籍作者 圖4.5還書實體e-r圖7:總體e-r圖:權(quán)限管理參數(shù)管理讀者管理管理員圖書管理讀者圖書歸還借閱圖書館信息管理出版社信息管理 1 1 n n m m n n n 圖4.6總體e-r圖4.4 數(shù)據(jù)庫表tb_manager表是用戶記錄用戶的信息(管理員信息表)管理員信息表主要用來保存管理員信息。表tb_manager的結(jié)構(gòu)如表4-4-1所示。字段名稱數(shù)據(jù)類型是否為空是否主鍵默認值描述idint(10)unsigncdnoyesid自動編號namevarcha

38、r(30)yesnull管理員名稱pwdvarchar(30)yesnull密碼 表4-4-1tb_purview(權(quán)限表)權(quán)限表主要用來保存管理員的權(quán)限信息,該表中的id字段與管理員信息表(tb_ purview)中的id字段關(guān)聯(lián)。表tb_ purview的結(jié)構(gòu)如表4-4-2所示。字段名稱數(shù)據(jù)類型是否為空是否主鍵默認值描述idint(11)noyes0管理員id號syssettinyint(1)yes0系統(tǒng)設(shè)置readersettinyint(1)yes0讀者管理booksettinyint(1)yes0圖書管理borrowbacktinyint(1)yes0圖書借還sysquerytiny

39、int(1)yes0系統(tǒng)查詢表4-4-2tb_parameter(參數(shù)設(shè)置表)參數(shù)設(shè)置表主要用來保存辦證費及書證的有效期限等信息。表tb_parameter的結(jié)構(gòu)如表4-4-3所示字段名稱數(shù)據(jù)類型是否為空是否主鍵默認值描述idint(10)unsigncdnoyesid(自動編號)costint(10)unsigncdyesnull辦證費validityint(10)unsigncdyesnull有效期限表4-4-3tb_booktype(圖書類型表)主要用來保存圖書類型信息。表tb_booktype的結(jié)構(gòu)如表4-4-4所示。字段名稱數(shù)據(jù)類型是否為空是否主鍵默認值描述idint(10)unsi

40、gncdnoyesid(自動編號)typenamevarchar(30)yesnull類型名稱daysint(10)unsigncdyesnull可借天數(shù)表4-4-4tb_bookcase(書架信息表)書架信息表主要用來保存書架信息。表tb_bookcase的結(jié)構(gòu)如表4-4-5所示。字段名稱數(shù)據(jù)類型是否為空是否主鍵默認值描述idint(10)unsigncdnoyesid(自動編號)namevarchar(30)yesnull書架名稱表4-4-5tb_bookinfo(圖書信息表).該表用于保存圖書信息。表tb_bookinfo的結(jié)構(gòu)如表4-4-6所示。字段名稱數(shù)據(jù)類型是否為空是否主鍵默認值描

41、述barcodevarchar(30)yesnull條形碼booknamevarchar(70)yesnull書名typeidint(10)unsignedyesnull類型authorvarchar(30)yesnull作者translatorvarchar(30)yesnull譯者isbnvarchar(20)yesnull出版社pricefloat(8,2)yesnull價格pageint(10)unsignedyesnull頁碼bookcaseint(10)unsignedyesnull書架inttimedateyesnull錄入時間operatorvarchar(30)yesnull

42、操作員deltinyint(1)yes0是否刪除idint(11)noyesid(自動編號)表4-4-6tb_borrow(圖書借閱信息表)用于保存圖書信息。表tb_borrow如表4-4-7所示。字段名稱數(shù)據(jù)類型是否為空是否主鍵默認值描述idint(10)unsignednoyesid(自動編號)readeridint(10)unsignedyesnull讀者編號bookidint(10)yesnull圖書編號borrowtimedateyesnull借書編號backtimedateyesnull應(yīng)還時間operatorvarchar(30)yesnull操作員ifbacktinyint(1

43、)yes0是否歸還表4-4-7tb_giveback(圖書歸還信息表)圖書歸還信息表主要用來保存圖書歸還信息。表tb_giveback的結(jié)構(gòu)如表4-4-8所示。字段名稱數(shù)據(jù)類型是否為空是否主鍵默認值描述idint(10)unsignednoyesid(自動編號)readeridint(11)yesnull讀者編號bookidint(11)yesnull圖書編號backtimedateyesnull歸還時間operatorvarchar(30)yesnull操作員表4-4-8tb_publishing(出版社信息表)出版社信息表主要用來保存出版社信息。表tb_publishing的結(jié)構(gòu)如表4-4

44、-9所示。字段名稱數(shù)據(jù)類型是否為空是否主鍵默認值描述isbnvarchar(30)yesnullisbn號pubnamevarchar(30)yesnull出版社名稱表4-4-9tb_reader(讀者信息表)讀者信息表主要用來保存讀者信息。表tb_reader的結(jié)構(gòu)如表4-4-10所示。字段名稱數(shù)據(jù)類型是否為空是否主鍵默認值描述idint(10)unsignednoyesid(自動編號)namevarchar(20)yesnull姓名sexvarchar(4)yesnull性別barcodevarchar(30)yesnull條形碼vocationvarchar(50)yesnull職業(yè)bi

45、rthdaydateyesnull出生日期papertypevarchar(10)yesnull有效證件papernovarchar(20)yesnull證件號碼telvarchar(20)yesnull電話emailvarchar(100)yesnull電子郵件createdatedateyesnull登記日期operatorvarchar(30)yesnull操作員remarktextyesnull備注typeidint(11)yesnull類型表4-4-10tb_readertype(讀者類型信息表)讀者類型信息表主要用來保存讀者類型信息。表tb_readertype的結(jié)構(gòu)如表4-4-1

46、1所示。字段名稱數(shù)據(jù)類型是否為空是否主鍵默認值描述idint(10)unsignednoyesid(自動編號)namevarchar(50)yesnull名稱numberint(4)yesnull可借數(shù)量表4-4-11tb_library(圖書館信息表)圖書館信息表主要用來保存圖書館的基本信息。表tb_library的結(jié)構(gòu)如表4-4-12所示。字段名稱數(shù)據(jù)類型是否為空是否主鍵默認值描述idint(10)unsignednoyesid(自動編號)librarynamevarchar(50)yesnull館名curatorvarchar(10)yesnull館長telvarchar(20)yesnull聯(lián)系電話addressvarchar(100)yesnull聯(lián)系地址emailvarchar(100)yesnullemailurlvarchar(100)yesnull網(wǎng)址creatdatedateyesnull建館日期introducetextyesnull簡介表4-4-12第五章 系統(tǒng)實現(xiàn)系統(tǒng)給圖書館提供了系統(tǒng)設(shè)置、讀者管理、圖書管理、圖書借還、系統(tǒng)查詢等功能。本章節(jié)詳細地介紹了每個子模塊實現(xiàn)的過程,同時也列出了部分主要的源

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論