圖書館管理信息系統(tǒng)(基于JAVA和MySQL)_第1頁
圖書館管理信息系統(tǒng)(基于JAVA和MySQL)_第2頁
圖書館管理信息系統(tǒng)(基于JAVA和MySQL)_第3頁
圖書館管理信息系統(tǒng)(基于JAVA和MySQL)_第4頁
圖書館管理信息系統(tǒng)(基于JAVA和MySQL)_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上圖書館管理系統(tǒng)設(shè)計與實現(xiàn)目 錄專心-專注-專業(yè)一、需求分析1.1 需求概述圖書館在正常運營中面對大量書籍、讀者信息以及兩者間相互聯(lián)系產(chǎn)生的借書信息、還書信息。現(xiàn)有的人工記錄方法既效率低又錯誤過多,大大影響了圖書館的正常管理工作。因此需要對書籍資源、讀者資源、借書信息、還書信息、掛失信息進行管理,及時了解各個環(huán)節(jié)中信息的變更,有利于管理效率的提高。一個圖書館有若干個圖書管理員,每個管理員用唯一的編號標識,并作為其身份驗證的用戶名,管理員的其他信息主要包括密碼、姓名等。一個圖書館有若干書籍由國標書號(ISBN)惟一標識。書籍需要記錄的其他主要信息有書名、作者、出版社、出版

2、年限、價格、圖書類型、索書號、館藏位置等。在從圖書館借閱圖書之前,讀者必須進行有效的注冊,包括讀者編號、類型、姓名、性別、登陸密碼等。讀者編號惟一標識讀者身份??梢詫⒆x者加入黑名單,加入黑名單的讀者不能再次借書。讀者歸還圖書后需保留借閱歷史記錄,其中包括的信息有圖書編號、讀者編號、借閱日期、歸還日期等。圖書丟失須進行掛失登記, 將原有借閱記錄狀態(tài)改為已掛失并且添加丟失日期等信息。1.2 功能分析 用戶信息管理(用戶信息包括管理員及讀者信息)添加用戶信息刪除用戶信息修改用戶信息查詢用戶信息修改用戶密碼 圖書信息管理添加圖書信息刪除圖書信息修改圖書信息查詢圖書信息 圖書借閱管理添加借閱信息修改借閱

3、信息查詢借閱信息圖書掛失登記1.3開發(fā)平臺開發(fā)工具:eclipse + JDK1.6 + Struts2.3 + Spring3.2 + MyBatis3.2開發(fā)語言:Java、Python數(shù) 據(jù) 庫:MySQL 5.0系統(tǒng)環(huán)境:Windows 7 + Tomcat 71.4數(shù)據(jù)庫需求分析 用戶信息:用戶編號、賬號、密碼、姓名、性別、員工號/學號、年級、用戶類型、用戶狀態(tài) 圖書信息:圖書編號、書名、副標題、原書名、封面、作者、譯者、出版社、頁數(shù)、價格、裝幀、館藏位置、出版日期、目錄、作者簡介、圖書簡介、入庫日期、豆瓣評分、圖書狀態(tài) 借閱信息:操作員編號、讀者編號、圖書編號、借閱日期、借閱天數(shù)、

4、歸還日期、掛失日期、備注、借閱狀態(tài)二、數(shù)據(jù)庫邏輯設(shè)計2.1 ER圖圖1 圖書館管理系統(tǒng)ER模型圖上圖是圖書館管理系統(tǒng)的概念模型的ER圖,涉及到的實體集有:管理員實體集:具有屬性管理員編號、賬號、密碼、員工號、姓名、性別、狀態(tài)。讀者實體集:具有屬性讀者編號、賬號、密碼、學號、姓名、性別、狀態(tài)。圖書實體集:具有屬性圖書編號、名稱、副標題、原名、作者、譯者、ISBN、價格、頁數(shù)、裝幀、館藏位置、出版社、出版日期、作者簡介、目錄、圖書簡介、封面、入庫日期、狀態(tài)。借閱記錄實體集:具有屬性借閱編號、操作者(管理員)、借閱者(讀者)、所借圖書、借閱日期、借閱天數(shù)、歸還日期、丟失日期、備注、狀態(tài)。一個讀者可以

5、借閱多本圖書,一個操作員可以登記多個圖書借閱記錄,管理員、讀者及圖書是M:N:P多對多的關(guān)系。為簡化數(shù)據(jù)庫設(shè)計,不在重復設(shè)置丟失表,讀者丟失圖書時,借閱記錄轉(zhuǎn)化為丟失記錄,借閱記錄中狀態(tài)設(shè)為2的為丟失記錄。同理將管理員表和讀者表合二為一,增加用戶類型字段,用戶類型為0表示讀者信息,用戶類型為1表示管理員信息。2.2 將E-R模型轉(zhuǎn)換為關(guān)系模型(1) 管理員實體集可以轉(zhuǎn)換為關(guān)系管理員(編號,賬號,密碼,員工號,姓名,性別,狀態(tài))(2) 讀者實體集可以轉(zhuǎn)換為關(guān)系讀者(編號、賬號、密碼、學號、姓名、性別、狀態(tài))(3) 圖書實體集可以轉(zhuǎn)換為關(guān)系圖書(編號、名稱、副標題、原名、作者、譯者、ISBN、價格

6、、頁數(shù)、裝幀、館藏位置、出版社、出版日期、作者簡介、目錄、圖書簡介、封面、入庫日期、狀態(tài))(4) 借閱實體集可以轉(zhuǎn)換為關(guān)系借閱記錄(編號、操作者、借閱者、所借圖書、借閱日期、借閱天數(shù)、歸還日期、丟失日期、備注、狀態(tài))2.2 將關(guān)系模型轉(zhuǎn)化為表結(jié)構(gòu)2.2.1用戶信息表n 表 名:usern 功能描述:記錄管理員、讀者信息n 字段說明:字段名稱類型PFM說明useridint(11)用戶編號,自增usernamevarchar(30)賬號passwordvarchar(30)密碼realnamevarchar(30)姓名sexvarchar(4)性別employeeidvarchar(30)員工號

7、/學號maxnumint(11)最大可借數(shù)目(預留)borrowednumint(11)已借數(shù)目(預留)gradevarchar(50)年級usertypeint(11)類型,0讀者;1管理員statusint(11)狀態(tài),0正常;1失效2.2.1圖書信息表n 表 名:bookn 功能描述:記錄圖書信息n 字段說明:字段名稱類型PFM說明bookidint(11)圖書編號,自增booknamevarchar(255)書名subheadingvarchar(512)副標題oldnamevarchar(512)原名thumbvarchar(255)封面bookconcernvarchar(255)

8、出版社pagesvarchar(40)頁數(shù)pricevarchar(40)價格boundvarchar(40)裝幀authorvarchar(255)作者translatorvarchar(255)譯者isbnvarchar(40)ISBN號pubdatevarchar(20)發(fā)布年份scoredecimal(4)評分catalogtext(0)目錄authorintrotext(0)作者簡介descriptiontext(0)簡介locationvarchar(100)館藏位置adddatedate(0)入庫日期statusint(11)狀態(tài): 0 正??山?1 已借出 2已掛失2.2.1借

9、閱登記表n 表 名:borrown 功能描述:記錄圖書借閱、圖書歸還、圖書掛失等信息n 字段說明:字段名稱類型PFM說明borrowidint(11)借閱流水號,自增borroweridint(11)借閱者編號(外鍵user表)bookidint(11)圖書編號(外鍵book表)operatoridint(11)操作員編號(外鍵user表)borrowdatedate借閱日期borrowdaysint(11)借閱天數(shù)returndatedate歸還日期losedatedate丟失日期remarktext備注statusint(11)狀態(tài),0未歸還 1已歸還 2已掛失三、數(shù)據(jù)庫物理設(shè)計3.1 索

10、引表建立索引的列原因useruserid主鍵,搜索條件username搜索條件employeeid搜索條件bookbookid主鍵,搜索條件isbn搜索條件status搜索條件borrowborrowid主鍵,搜索條件operatorid外鍵,搜索條件borrowerid外鍵,搜索條件bookid外鍵,搜索條件status搜索條件3.2 視圖1) 該系統(tǒng)需經(jīng)常查詢某個讀者當前借閱書刊的詳細信息,為簡化多表查詢,故建立視圖view_borrow,該視圖定義如下:CREATE view view_borrowasselect borrow.borrowid AS borrowid,borrow.b

11、orrowerid AS borrowerid,borrow.bookid AS bookid,borrow.operatorid AS operatorid,borrow.borrowdate AS borrowdate,borrow.borrowdays AS borrowdays,borrow.returndate AS returndate,borrow.remark AS remark,borrow.status AS status,book.bookname AS bookname,book.isbn AS isbn,borrower.realname AS borrowernam

12、e,borrower.employeeid AS employeeid,operator.realname AS operatorname from (borrow join book) join user borrower) join user operator) where (borrow.bookid = book.bookid) and (borrow.borrowerid = borrower.userid) and (borrow.operatorid = operator.userid)3.3 安全機制1) 系統(tǒng)安全并沒有給每個數(shù)據(jù)庫用戶分配一個認證標識,均使用超級用戶root連

13、接數(shù)據(jù)庫,數(shù)據(jù)庫用戶所能做的操作在應用程序中加以控制,來保證系統(tǒng)安全。2) 數(shù)據(jù)安全基本上沒有用戶對基本表和視圖操作的權(quán)限控制,這些均在應用程序中加以控制,來保證數(shù)據(jù)安全。四、應用程序設(shè)計4.1 管理員功能模塊圖2 圖書館管理系統(tǒng)功能模塊4.1.1 系統(tǒng)管理模塊用戶查詢,根據(jù)用戶編號、賬號、姓名、工號、學號、類型、狀態(tài)檢索用戶詳細信息; 添加新用戶時,系統(tǒng)自動生成用戶編號,輸入用戶的其他相關(guān)信息,提交即可添加新用戶。刪除讀者時,若該讀者存在借閱圖書未還的情況,則系統(tǒng)提示暫無法刪除。4.1.2 借閱管理模塊。功能包括檢索借書登記,還書登記和書刊掛失登記。1)借書登記讀者借閱圖書時,管理員輸入讀者

14、編號,可查詢讀者的詳細信息;輸入要借閱書刊的編號或者ISBN號,可核實該書的詳細信息;點擊提交借書請求。結(jié)束成功后,該讀者當前借閱信息將添加新借閱書刊,令管理員方便的核實提交是否成功。以下幾種情況任意一種情況發(fā)生,讀者都暫時無法借書:該讀者當前借閱量已達最大借閱量;該讀者有借閱圖書已超期未歸還;該讀者被加入黑名單的。2)還書登記讀者歸還書刊時,只需輸入書刊號,可查詢該書的借閱信息,點擊還書提交還書請求填寫相關(guān)的信息后提交,書刊成功歸還,其他讀者可以借閱。3)書刊掛失借閱書刊遺失,讀者可進行掛失。掛失操作時,只需輸入讀者編號,即可查詢讀者當前借閱書刊的詳細信息,每條記錄后附有掛失一欄,讀者確認掛

15、失某本書刊,管理員只需點擊掛失一欄,填寫相關(guān)信息后提交,掛失成功,借閱記錄狀態(tài)改為已掛失,圖書狀態(tài)改為已掛失,其他讀者不可借閱此書。4.1.3 圖書管理模塊功能包括檢索圖書詳細信息,添加圖書信息,修改圖書信息,刪除圖書信息。圖書檢索,根據(jù)圖書編號,ISBN,圖書名稱、圖書作者、館藏位置、發(fā)行日期進行模糊查詢,輸入檢索條件后單擊檢索即可檢索得到相應圖書詳細信息。該信息還包括圖書館藏位置、是否可借的情況。添加新書時,輸入書刊的相關(guān)信息,為了減少圖書編目輸入的復雜度,系統(tǒng)提供根據(jù)ISBN號從互聯(lián)網(wǎng)豆瓣讀書獲取圖書信息功能,大大減少管理員輸入圖書詳細信息時的效率。刪除指定書刊時,輸入書號可查詢書刊詳細

16、信息,若當前書刊有外借副本,則系統(tǒng)提示暫無法刪除;點擊提交刪除請求,則刪除該書刊的相關(guān)信息。4.2.讀者功能模塊4.2.1 讀者信息管理模塊讀者可查看個人信息,并修改個人密碼。4.2.2 圖書檢索模塊讀者可以根據(jù)圖書編號,ISBN,圖書名稱、圖書作者、館藏位置、發(fā)行日期進行模糊查詢,輸入檢索條件后單擊檢索即可檢索得到相應圖書詳細信息。該信息還包括圖書館藏位置、是否可借的情況。讀者檢索到想要借閱的圖書信息后記錄圖書編號、ISBN等信息,到圖書館前臺提供以上信息進行圖書借閱。4.3 界面設(shè)計界面設(shè)計風格簡單明了,樸實自然,便于操作。盡可能列表直接顯示查詢結(jié)果,避免數(shù)據(jù)的輸入,方便用戶使用。圖3 圖

17、書入庫界面圖4 圖書管理界面圖5 圖書借閱管理界面圖6 圖書借閱登記界面圖7 用戶管理界面五、測試和運行分別用管理員用戶root,密碼admin和讀者用戶sunshine,密碼登錄圖書館管理信息系統(tǒng)。登錄成功后,分別進入管理員業(yè)務界面和讀者我的圖書館界面。通過python寫的爬蟲工具從豆瓣讀書抓取了近5000條圖書信息作為初始化測試數(shù)據(jù)。在圖書檢索界面通過輸入ISBN等檢索條件進行檢索,系統(tǒng)響應時間在200ms, 響應時間非???。如下圖:通過root、sunshine賬號對圖書借閱、歸還、掛失進行了測試,流程均可以跑通,對于黑名單用戶、已掛失圖書均做了相應的邏輯處理。六、總結(jié)在這次數(shù)據(jù)庫系統(tǒng)原

18、理大作業(yè)的事件過程中,確實有很多收獲。通過這次課程設(shè)計把上學期的java課程學到的東西也應用到了實踐過程之中。還學習使用了java流行的框架結(jié)構(gòu)struts、spring、mybatis等。雖然只是一個簡單的DEMO系統(tǒng),有些系統(tǒng)邏輯尚有欠缺,并不能實際應用,但是從數(shù)據(jù)庫的設(shè)計到編碼實現(xiàn),這個過程中還是學到了不少東西。另外從豆瓣讀書獲取圖書詳細信息是此圖書館管理系統(tǒng)的一大創(chuàng)新,目前市場上流行的圖書館管理系統(tǒng)在成千上萬圖書集中入庫時需要N多編輯人員對圖書信息進行人工錄入,費時費力而且錄入信息不一定準確。隨著豆瓣讀書、當當網(wǎng)、卓越網(wǎng)的流行,互聯(lián)網(wǎng)上存在著大量的圖書詳細信息,圖書入庫時從這些互聯(lián)網(wǎng)上根據(jù)ISBN直接獲取圖書詳細信息供錄入人員參考將會大大減少圖書信息錄入的工作量,大

溫馨提示

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

評論

0/150

提交評論