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

下載本文檔

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

文檔簡(jiǎn)介

1、圖書(shū)館管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)目 錄一、需求分析11.1 需求概述11.2 功能分析11.3開(kāi)發(fā)平臺(tái)21.4數(shù)據(jù)庫(kù)需求分析2二、數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)32.1 ER圖32.2 將E-R模型轉(zhuǎn)換為關(guān)系模型42.2 將關(guān)系模型轉(zhuǎn)化為表結(jié)構(gòu)4用戶信息表4圖書(shū)信息表5借閱登記表6三、數(shù)據(jù)庫(kù)物理設(shè)計(jì)73.1 索引73.2 視圖73.3 安全機(jī)制8四、應(yīng)用程序設(shè)計(jì)94.1 管理員功能模塊94.1.1 系統(tǒng)管理模塊94.1.2 借閱管理模塊。94.1.3 圖書(shū)管理模塊104.2.讀者模塊104.2.1 讀者信息管理模塊104.2.2 圖書(shū)檢索模塊104.3 界面設(shè)計(jì)11五、測(cè)試和運(yùn)行13六、總結(jié)14一、需求分析1.1 需

2、求概述圖書(shū)館在正常運(yùn)營(yíng)中面對(duì)大量書(shū)籍、讀者信息以及兩者間相互聯(lián)系產(chǎn)生的借書(shū)信息、還書(shū)信息?,F(xiàn)有的人工記錄方法既效率低又錯(cuò)誤過(guò)多,大大影響了圖書(shū)館的正常管理工作。因此需要對(duì)書(shū)籍資源、讀者資源、借書(shū)信息、還書(shū)信息、掛失信息進(jìn)行管理,及時(shí)了解各個(gè)環(huán)節(jié)中信息的變更,有利于管理效率的提高。一個(gè)圖書(shū)館有若干個(gè)圖書(shū)管理員,每個(gè)管理員用唯一的編號(hào)標(biāo)識(shí),并作為其身份驗(yàn)證的用戶名,管理員的其他信息主要包括密碼、姓名等。一個(gè)圖書(shū)館有若干書(shū)籍由國(guó)標(biāo)書(shū)號(hào)(ISBN)惟一標(biāo)識(shí)。書(shū)籍需要記錄的其他主要信息有書(shū)名、作者、出版社、出版年限、價(jià)格、圖書(shū)類型、索書(shū)號(hào)、館藏位置等。在從圖書(shū)館借閱圖書(shū)之前,讀者必須進(jìn)行有效的注冊(cè),包括

3、讀者編號(hào)、類型、姓名、性別、登陸密碼等。讀者編號(hào)惟一標(biāo)識(shí)讀者身份。可以將讀者加入黑名單,加入黑名單的讀者不能再次借書(shū)。讀者歸還圖書(shū)后需保留借閱歷史記錄,其中包括的信息有圖書(shū)編號(hào)、讀者編號(hào)、借閱日期、歸還日期等。圖書(shū)丟失須進(jìn)行掛失登記, 將原有借閱記錄狀態(tài)改為已掛失并且添加丟失日期等信息。1.2 功能分析 用戶信息管理(用戶信息包括管理員及讀者信息)添加用戶信息刪除用戶信息修改用戶信息查詢用戶信息修改用戶密碼 圖書(shū)信息管理添加圖書(shū)信息刪除圖書(shū)信息修改圖書(shū)信息查詢圖書(shū)信息 圖書(shū)借閱管理添加借閱信息修改借閱信息查詢借閱信息圖書(shū)掛失登記1.3開(kāi)發(fā)平臺(tái)開(kāi)發(fā)工具:eclipse + JDK1.6 + St

4、ruts2.3 + Spring3.2 + MyBatis3.2開(kāi)發(fā)語(yǔ)言:Java、Python數(shù) 據(jù) 庫(kù):MySQL 5.0系統(tǒng)環(huán)境:Windows 7 + Tomcat 71.4數(shù)據(jù)庫(kù)需求分析 用戶信息:用戶編號(hào)、賬號(hào)、密碼、姓名、性別、員工號(hào)/學(xué)號(hào)、年級(jí)、用戶類型、用戶狀態(tài) 圖書(shū)信息:圖書(shū)編號(hào)、書(shū)名、副標(biāo)題、原書(shū)名、封面、作者、譯者、出版社、頁(yè)數(shù)、價(jià)格、裝幀、館藏位置、出版日期、目錄、作者簡(jiǎn)介、圖書(shū)簡(jiǎn)介、入庫(kù)日期、豆瓣評(píng)分、圖書(shū)狀態(tài) 借閱信息:操作員編號(hào)、讀者編號(hào)、圖書(shū)編號(hào)、借閱日期、借閱天數(shù)、歸還日期、掛失日期、備注、借閱狀態(tài)二、數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)2.1 ER圖圖1 圖書(shū)館管理系統(tǒng)ER模型

5、圖上圖是圖書(shū)館管理系統(tǒng)的概念模型的ER圖,涉及到的實(shí)體集有:管理員實(shí)體集:具有屬性管理員編號(hào)、賬號(hào)、密碼、員工號(hào)、姓名、性別、狀態(tài)。讀者實(shí)體集:具有屬性讀者編號(hào)、賬號(hào)、密碼、學(xué)號(hào)、姓名、性別、狀態(tài)。圖書(shū)實(shí)體集:具有屬性圖書(shū)編號(hào)、名稱、副標(biāo)題、原名、作者、譯者、ISBN、價(jià)格、頁(yè)數(shù)、裝幀、館藏位置、出版社、出版日期、作者簡(jiǎn)介、目錄、圖書(shū)簡(jiǎn)介、封面、入庫(kù)日期、狀態(tài)。借閱記錄實(shí)體集:具有屬性借閱編號(hào)、操作者(管理員)、借閱者(讀者)、所借圖書(shū)、借閱日期、借閱天數(shù)、歸還日期、丟失日期、備注、狀態(tài)。一個(gè)讀者可以借閱多本圖書(shū),一個(gè)操作員可以登記多個(gè)圖書(shū)借閱記錄,管理員、讀者及圖書(shū)是M:N:P多對(duì)多的關(guān)系。

6、為簡(jiǎn)化數(shù)據(jù)庫(kù)設(shè)計(jì),不在重復(fù)設(shè)置丟失表,讀者丟失圖書(shū)時(shí),借閱記錄轉(zhuǎn)化為丟失記錄,借閱記錄中狀態(tài)設(shè)為2的為丟失記錄。同理將管理員表和讀者表合二為一,增加用戶類型字段,用戶類型為0表示讀者信息,用戶類型為1表示管理員信息。2.2 將E-R模型轉(zhuǎn)換為關(guān)系模型(1) 管理員實(shí)體集可以轉(zhuǎn)換為關(guān)系管理員(編號(hào),賬號(hào),密碼,員工號(hào),姓名,性別,狀態(tài))(2) 讀者實(shí)體集可以轉(zhuǎn)換為關(guān)系讀者(編號(hào)、賬號(hào)、密碼、學(xué)號(hào)、姓名、性別、狀態(tài))(3) 圖書(shū)實(shí)體集可以轉(zhuǎn)換為關(guān)系圖書(shū)(編號(hào)、名稱、副標(biāo)題、原名、作者、譯者、ISBN、價(jià)格、頁(yè)數(shù)、裝幀、館藏位置、出版社、出版日期、作者簡(jiǎn)介、目錄、圖書(shū)簡(jiǎn)介、封面、入庫(kù)日期、狀態(tài))(4

7、) 借閱實(shí)體集可以轉(zhuǎn)換為關(guān)系借閱記錄(編號(hào)、操作者、借閱者、所借圖書(shū)、借閱日期、借閱天數(shù)、歸還日期、丟失日期、備注、狀態(tài))2.2 將關(guān)系模型轉(zhuǎn)化為表結(jié)構(gòu)2.2.1用戶信息表n 表 名:usern 功能描述:記錄管理員、讀者信息n 字段說(shuō)明:字段名稱類型PFM說(shuō)明useridint(11)用戶編號(hào),自增usernamevarchar(30)賬號(hào)passwordvarchar(30)密碼realnamevarchar(30)姓名sexvarchar(4)性別employeeidvarchar(30)員工號(hào)/學(xué)號(hào)maxnumint(11)最大可借數(shù)目(預(yù)留)borrowednumint(11)已借數(shù)

8、目(預(yù)留)gradevarchar(50)年級(jí)usertypeint(11)類型,0讀者;1管理員statusint(11)狀態(tài),0正常;1失效2.2.1圖書(shū)信息表n 表 名:bookn 功能描述:記錄圖書(shū)信息n 字段說(shuō)明:字段名稱類型PFM說(shuō)明bookidint(11)圖書(shū)編號(hào),自增booknamevarchar(255)書(shū)名subheadingvarchar(512)副標(biāo)題oldnamevarchar(512)原名thumbvarchar(255)封面bookconcernvarchar(255)出版社pagesvarchar(40)頁(yè)數(shù)pricevarchar(40)價(jià)格boundvar

9、char(40)裝幀authorvarchar(255)作者translatorvarchar(255)譯者isbnvarchar(40)ISBN號(hào)pubdatevarchar(20)發(fā)布年份scoredecimal(4)評(píng)分catalogtext(0)目錄authorintrotext(0)作者簡(jiǎn)介descriptiontext(0)簡(jiǎn)介locationvarchar(100)館藏位置adddatedate(0)入庫(kù)日期statusint(11)狀態(tài): 0 正??山?1 已借出 2已掛失2.2.1借閱登記表n 表 名:borrown 功能描述:記錄圖書(shū)借閱、圖書(shū)歸還、圖書(shū)掛失等信息n 字段說(shuō)

10、明:字段名稱類型PFM說(shuō)明borrowidint(11)借閱流水號(hào),自增borroweridint(11)借閱者編號(hào)(外鍵user表)bookidint(11)圖書(shū)編號(hào)(外鍵book表)operatoridint(11)操作員編號(hào)(外鍵user表)borrowdatedate借閱日期borrowdaysint(11)借閱天數(shù)returndatedate歸還日期losedatedate丟失日期remarktext備注statusint(11)狀態(tài),0未歸還 1已歸還 2已掛失三、數(shù)據(jù)庫(kù)物理設(shè)計(jì)3.1 索引表建立索引的列原因useruserid主鍵,搜索條件username搜索條件employee

11、id搜索條件bookbookid主鍵,搜索條件isbn搜索條件status搜索條件borrowborrowid主鍵,搜索條件operatorid外鍵,搜索條件borrowerid外鍵,搜索條件bookid外鍵,搜索條件status搜索條件3.2 視圖1) 該系統(tǒng)需經(jīng)常查詢某個(gè)讀者當(dāng)前借閱書(shū)刊的詳細(xì)信息,為簡(jiǎn)化多表查詢,故建立視圖view_borrow,該視圖定義如下:CREATE view view_borrowasselect borrow.borrowid AS borrowid,borrow.borrowerid AS borrowerid,borrow.bookid AS bookid

12、,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 borrowername,borrower.employeeid AS employeeid,operator.re

13、alname 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 安全機(jī)制1) 系統(tǒng)安全并沒(méi)有給每個(gè)數(shù)據(jù)庫(kù)用戶分配一個(gè)認(rèn)證標(biāo)識(shí),均使用超級(jí)用戶root連接數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)用戶所能做的操作在應(yīng)用程序中加以控制,來(lái)保證系統(tǒng)安全。2) 數(shù)據(jù)安全基本上沒(méi)有

14、用戶對(duì)基本表和視圖操作的權(quán)限控制,這些均在應(yīng)用程序中加以控制,來(lái)保證數(shù)據(jù)安全。四、應(yīng)用程序設(shè)計(jì)4.1 管理員功能模塊圖2 圖書(shū)館管理系統(tǒng)功能模塊4.1.1 系統(tǒng)管理模塊用戶查詢,根據(jù)用戶編號(hào)、賬號(hào)、姓名、工號(hào)、學(xué)號(hào)、類型、狀態(tài)檢索用戶詳細(xì)信息; 添加新用戶時(shí),系統(tǒng)自動(dòng)生成用戶編號(hào),輸入用戶的其他相關(guān)信息,提交即可添加新用戶。刪除讀者時(shí),若該讀者存在借閱圖書(shū)未還的情況,則系統(tǒng)提示暫無(wú)法刪除。4.1.2 借閱管理模塊。功能包括檢索借書(shū)登記,還書(shū)登記和書(shū)刊掛失登記。1)借書(shū)登記讀者借閱圖書(shū)時(shí),管理員輸入讀者編號(hào),可查詢讀者的詳細(xì)信息;輸入要借閱書(shū)刊的編號(hào)或者ISBN號(hào),可核實(shí)該書(shū)的詳細(xì)信息;點(diǎn)擊提交

15、借書(shū)請(qǐng)求。結(jié)束成功后,該讀者當(dāng)前借閱信息將添加新借閱書(shū)刊,令管理員方便的核實(shí)提交是否成功。以下幾種情況任意一種情況發(fā)生,讀者都暫時(shí)無(wú)法借書(shū):該讀者當(dāng)前借閱量已達(dá)最大借閱量;該讀者有借閱圖書(shū)已超期未歸還;該讀者被加入黑名單的。2)還書(shū)登記讀者歸還書(shū)刊時(shí),只需輸入書(shū)刊號(hào),可查詢?cè)摃?shū)的借閱信息,點(diǎn)擊還書(shū)提交還書(shū)請(qǐng)求填寫(xiě)相關(guān)的信息后提交,書(shū)刊成功歸還,其他讀者可以借閱。3)書(shū)刊掛失借閱書(shū)刊遺失,讀者可進(jìn)行掛失。掛失操作時(shí),只需輸入讀者編號(hào),即可查詢讀者當(dāng)前借閱書(shū)刊的詳細(xì)信息,每條記錄后附有掛失一欄,讀者確認(rèn)掛失某本書(shū)刊,管理員只需點(diǎn)擊掛失一欄,填寫(xiě)相關(guān)信息后提交,掛失成功,借閱記錄狀態(tài)改為已掛失,圖書(shū)

16、狀態(tài)改為已掛失,其他讀者不可借閱此書(shū)。4.1.3 圖書(shū)管理模塊功能包括檢索圖書(shū)詳細(xì)信息,添加圖書(shū)信息,修改圖書(shū)信息,刪除圖書(shū)信息。圖書(shū)檢索,根據(jù)圖書(shū)編號(hào),ISBN,圖書(shū)名稱、圖書(shū)作者、館藏位置、發(fā)行日期進(jìn)行模糊查詢,輸入檢索條件后單擊檢索即可檢索得到相應(yīng)圖書(shū)詳細(xì)信息。該信息還包括圖書(shū)館藏位置、是否可借的情況。添加新書(shū)時(shí),輸入書(shū)刊的相關(guān)信息,為了減少圖書(shū)編目輸入的復(fù)雜度,系統(tǒng)提供根據(jù)ISBN號(hào)從互聯(lián)網(wǎng)豆瓣讀書(shū)獲取圖書(shū)信息功能,大大減少管理員輸入圖書(shū)詳細(xì)信息時(shí)的效率。刪除指定書(shū)刊時(shí),輸入書(shū)號(hào)可查詢書(shū)刊詳細(xì)信息,若當(dāng)前書(shū)刊有外借副本,則系統(tǒng)提示暫無(wú)法刪除;點(diǎn)擊提交刪除請(qǐng)求,則刪除該書(shū)刊的相關(guān)信息。4

17、.2.讀者功能模塊4.2.1 讀者信息管理模塊讀者可查看個(gè)人信息,并修改個(gè)人密碼。4.2.2 圖書(shū)檢索模塊讀者可以根據(jù)圖書(shū)編號(hào),ISBN,圖書(shū)名稱、圖書(shū)作者、館藏位置、發(fā)行日期進(jìn)行模糊查詢,輸入檢索條件后單擊檢索即可檢索得到相應(yīng)圖書(shū)詳細(xì)信息。該信息還包括圖書(shū)館藏位置、是否可借的情況。讀者檢索到想要借閱的圖書(shū)信息后記錄圖書(shū)編號(hào)、ISBN等信息,到圖書(shū)館前臺(tái)提供以上信息進(jìn)行圖書(shū)借閱。4.3 界面設(shè)計(jì)界面設(shè)計(jì)風(fēng)格簡(jiǎn)單明了,樸實(shí)自然,便于操作。盡可能列表直接顯示查詢結(jié)果,避免數(shù)據(jù)的輸入,方便用戶使用。圖3 圖書(shū)入庫(kù)界面圖4 圖書(shū)管理界面圖5 圖書(shū)借閱管理界面圖6 圖書(shū)借閱登記界面圖7 用戶管理界面五、

18、測(cè)試和運(yùn)行分別用管理員用戶root,密碼admin和讀者用戶sunshine,密碼123456登錄圖書(shū)館管理信息系統(tǒng)。登錄成功后,分別進(jìn)入管理員業(yè)務(wù)界面和讀者我的圖書(shū)館界面。通過(guò)python寫(xiě)的爬蟲(chóng)工具從豆瓣讀書(shū)抓取了近5000條圖書(shū)信息作為初始化測(cè)試數(shù)據(jù)。在圖書(shū)檢索界面通過(guò)輸入ISBN等檢索條件進(jìn)行檢索,系統(tǒng)響應(yīng)時(shí)間在200ms, 響應(yīng)時(shí)間非??臁H缦聢D:通過(guò)root、sunshine賬號(hào)對(duì)圖書(shū)借閱、歸還、掛失進(jìn)行了測(cè)試,流程均可以跑通,對(duì)于黑名單用戶、已掛失圖書(shū)均做了相應(yīng)的邏輯處理。六、總結(jié)在這次數(shù)據(jù)庫(kù)系統(tǒng)原理大作業(yè)的事件過(guò)程中,確實(shí)有很多收獲。通過(guò)這次課程設(shè)計(jì)把上學(xué)期的java課程學(xué)到的東西也應(yīng)用到了實(shí)踐過(guò)程之中。還學(xué)習(xí)使用了java流行的框架結(jié)構(gòu)struts、spring、mybatis等。雖然只是一個(gè)簡(jiǎn)單的DEMO系統(tǒng),有些系統(tǒng)邏輯尚有欠缺,并不能實(shí)際應(yīng)用,但是從數(shù)據(jù)庫(kù)的設(shè)計(jì)到編碼實(shí)現(xiàn),這個(gè)過(guò)程中還是學(xué)到了不少東西。另外從豆瓣讀書(shū)獲取圖書(shū)詳細(xì)信息是此圖書(shū)館管理系統(tǒng)的一大創(chuàng)新,目前市場(chǎng)上流行的圖書(shū)館管理系統(tǒng)在成千上萬(wàn)圖書(shū)集中入庫(kù)時(shí)需要N多編輯人員對(duì)圖書(shū)信息進(jìn)行人工錄入,費(fèi)時(shí)費(fèi)力而且錄入信息不一定準(zhǔn)確。隨著豆瓣讀書(shū)、當(dāng)當(dāng)網(wǎng)、卓越網(wǎng)的流行,互聯(lián)網(wǎng)上存在著大量的圖書(shū)詳細(xì)信息,圖書(shū)入庫(kù)時(shí)從這些互聯(lián)網(wǎng)上根據(jù)ISBN直接獲取圖書(shū)詳細(xì)信息供錄入人員參考將會(huì)大大減

溫馨提示

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

評(píng)論

0/150

提交評(píng)論