圖書管理系統(tǒng)課程設(shè)計(jì)報(bào)告基于JAVA和SQLServer_第1頁
圖書管理系統(tǒng)課程設(shè)計(jì)報(bào)告基于JAVA和SQLServer_第2頁
圖書管理系統(tǒng)課程設(shè)計(jì)報(bào)告基于JAVA和SQLServer_第3頁
圖書管理系統(tǒng)課程設(shè)計(jì)報(bào)告基于JAVA和SQLServer_第4頁
圖書管理系統(tǒng)課程設(shè)計(jì)報(bào)告基于JAVA和SQLServer_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、課程設(shè)計(jì)報(bào)告設(shè)計(jì)名稱:數(shù)據(jù)庫原理與應(yīng)用課程設(shè)計(jì)設(shè)計(jì)題目:圖書管理系統(tǒng)的設(shè)計(jì)與開發(fā)學(xué)生學(xué)號(hào):專業(yè)班級(jí):學(xué)生姓名:學(xué)生成績:指導(dǎo)教師(職稱):完成時(shí)間:一說明:1、報(bào)告中的第一、二、三項(xiàng)由課程設(shè)計(jì)負(fù)責(zé)人在課程設(shè)計(jì)開始前填寫并發(fā)給 每個(gè)學(xué)生;四、五兩項(xiàng)(中英文摘要)由學(xué)生在完成課程設(shè)計(jì)后填寫。2、學(xué)生成績由指導(dǎo)教師根據(jù)學(xué)生的設(shè)計(jì)情況給出各項(xiàng)分值及總評(píng)成績。3、指導(dǎo)教師評(píng)語一欄由指導(dǎo)教師就學(xué)生在整個(gè)課程設(shè)計(jì)期間的表現(xiàn)、設(shè)計(jì)完成情況、報(bào)告的質(zhì)量等方面給出客觀、全面的評(píng)價(jià)。4、訓(xùn)練報(bào)告正文字?jǐn)?shù)應(yīng)不少于3000字,也可由指導(dǎo)教師根據(jù)本門課程設(shè)計(jì) 的具體情況酌情增加字?jǐn)?shù)或內(nèi)容。5、平時(shí)表現(xiàn)成績低于6分的學(xué)生,

2、其課程設(shè)計(jì)成績按不及格處理。6、 此表格式為武漢工程大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院提供的基本格式(適用于 學(xué)院各項(xiàng)課程設(shè)計(jì)),各教研室可根據(jù)本項(xiàng)課程設(shè)計(jì)的特點(diǎn)及內(nèi)容做適當(dāng) 的調(diào)整,并上報(bào)學(xué)院批準(zhǔn)。成績評(píng)定表學(xué)生姓名: 學(xué)號(hào): 班級(jí):類別合計(jì) 分值各項(xiàng) 分值評(píng)分標(biāo)準(zhǔn)實(shí)際 得分合計(jì)得分備注平時(shí) 表現(xiàn)1010遵守學(xué)習(xí)紀(jì)律,表現(xiàn)良好,積極完成課程設(shè)計(jì)任 務(wù),無曠課、遲到、早退等情況。設(shè)計(jì)完成情況4020按照要求完成設(shè)計(jì)內(nèi)容,方案合理,功能完善, 設(shè)計(jì)工作量飽滿,能運(yùn)用專業(yè)知識(shí)和技能去發(fā)現(xiàn) 與解決實(shí)際問題。20在設(shè)計(jì)過程中展現(xiàn)出了較強(qiáng)的學(xué)習(xí)能力、動(dòng)手實(shí)踐能力、團(tuán)隊(duì)協(xié)作能力和創(chuàng)新意識(shí)。報(bào)告質(zhì)量5015報(bào)告格式規(guī)

3、范,表述清晰,早節(jié)內(nèi)容組織恰當(dāng)。 符號(hào)統(tǒng)一,圖表完備,符合規(guī)范要求。參考文獻(xiàn) 數(shù)量在5篇以上,格式及引用符合要求。15報(bào)告內(nèi)容翔實(shí),結(jié)構(gòu)嚴(yán)謹(jǐn)合理。課題背景介紹清 楚,綜述充分。設(shè)計(jì)與實(shí)現(xiàn)等主要過程完整,論 述具體透徹。能運(yùn)用所學(xué)專業(yè)知識(shí)對(duì)問題加以分 析和求解。無抄襲現(xiàn)象。20設(shè)計(jì)報(bào)告對(duì)整個(gè)設(shè)計(jì)過程進(jìn)行了全面總結(jié),體現(xiàn)了收獲,得出了有價(jià)值的結(jié)論或結(jié)果。總評(píng)成績指導(dǎo)教師評(píng)語指導(dǎo)教師:(簽字)日期:年月日、課程設(shè)計(jì)目的、條件、任務(wù)和內(nèi)容要求:要求能夠自覺運(yùn)用數(shù)據(jù)庫系統(tǒng)課程學(xué)習(xí)的理論知識(shí)指導(dǎo)軟件設(shè)計(jì);掌握信息管理 系統(tǒng)的開發(fā)方法和步驟。整個(gè)應(yīng)用系統(tǒng)的設(shè)計(jì)嚴(yán)格按照數(shù)據(jù)庫設(shè)計(jì)的方法來進(jìn)行,包括數(shù)據(jù)庫的設(shè)計(jì)

4、和應(yīng) 用程序的設(shè)計(jì),兩部分相輔相成。數(shù)據(jù)庫設(shè)計(jì)過程包含以下步驟:(1) 需求分析:系統(tǒng)的目的、用戶的各種可能要求、業(yè)務(wù)流程圖、數(shù)據(jù)流程圖。(2) 概念結(jié)構(gòu)設(shè)計(jì):用E-R圖來描述實(shí)體及實(shí)體間的聯(lián)系。(3)邏輯結(jié)構(gòu)設(shè)計(jì):確定關(guān)系模式(包括關(guān)系模式優(yōu)化),各種約束的聲明,如主 外碼約束、唯一性約束、非空約束等。同時(shí)給出系統(tǒng)的功能模塊組成圖,系統(tǒng)各模塊 功能。(4)物理結(jié)構(gòu)設(shè)計(jì)(5)數(shù)據(jù)庫實(shí)施2數(shù)據(jù)庫的實(shí)施階段:數(shù)據(jù)庫用 SQL SERVER等創(chuàng)建,前端開發(fā)使用 JAVA、. NET 等實(shí)現(xiàn)。3 通過此次課程設(shè)計(jì)提高自己獨(dú)立分析問題、解決問題的能力。掌握從需求分析、數(shù)據(jù)庫設(shè)計(jì)(概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)

5、計(jì)、物理結(jié)構(gòu)設(shè)計(jì))、編寫程序、測試分析, 撰寫文檔到最終答辯的整個(gè)過程。指導(dǎo)教師簽字:年 月 日二、進(jìn)度安排:2015-11-20:明確所選課題的具體要求,按要求閱讀相關(guān)的參考文獻(xiàn)及資料2015-11-30 至 2015-12-18:a)需求分析b)數(shù)據(jù)庫設(shè)計(jì)C)編碼調(diào)試d)書寫報(bào)告三、應(yīng)收集資料及主要參考文獻(xiàn):1 耿祥義.JAVA2實(shí)用教程.北京:清華大學(xué)出版社,20062 朱仲杰JAVA2全方位學(xué)習(xí).北京:機(jī)械工業(yè)出版社,20063 張思民JAVA程序設(shè)計(jì)實(shí)踐教程.北京:清華大學(xué)出版社,20064 湯一平JaVa語言程序設(shè)計(jì).北京:科學(xué)出版社,2006 劉藝JaVa程序設(shè)計(jì)大學(xué)教程.北京:

6、機(jī)械工業(yè)出版社,2006 耿祥義Java課程設(shè)計(jì).北京:清華大學(xué)出版社,20037王珊.數(shù)據(jù)庫系統(tǒng)概論(第5版)北京:高等教育出版社,2014四、摘要:對(duì)于日益擴(kuò)大的圖書館,借閱者或工作人員查找特定的書目總是勞神費(fèi)力,有時(shí) 還沒有結(jié)果。為了縮短借閱者的等待時(shí)間,減輕管理人員的工作量,提高管理的質(zhì)量 和水平,做到高效、智能化管理,從而達(dá)到提高圖書借閱信息管理效率的目的。采用 數(shù)據(jù)庫技術(shù)生成的圖書館借閱管理系統(tǒng)將會(huì)極大地方便借閱者,使圖書館管理人員工 作人員從繁忙、復(fù)雜的工作進(jìn)入到一個(gè)簡單、高效的工作中。系統(tǒng)的設(shè)計(jì)嚴(yán)格按照數(shù)據(jù)庫設(shè)計(jì)的方法來進(jìn)行,包括數(shù)據(jù)庫的設(shè)計(jì)和應(yīng)用程序的 設(shè)計(jì),兩部分相輔相成。

7、在程序設(shè)計(jì)與調(diào)試上采用了自上而下,逐步細(xì)化,逐步完善 的原則。采用結(jié)構(gòu)化的功能模塊設(shè)計(jì)系統(tǒng)功能,可讀性好,易于擴(kuò)充。系統(tǒng)數(shù)據(jù)庫用 SQL SeVer創(chuàng)建,前端開發(fā)使用JAVA語言和ECliPSe開發(fā)工具實(shí)現(xiàn)。圖書館基本功 能全面,系統(tǒng)可讀性好,易于維護(hù)、更新,安全性好。關(guān)鍵詞:圖書管理系統(tǒng);結(jié)構(gòu)化;SQL Sever; JAVA ECIiPSe五、Abstract:For grow ing library, borrow or find SPeCifiC bibliography Staff always laborious, SOmetimeS no results. So ofte n W

8、e PUt a lot of man power and finan cial resources but lack Cf efficient management efficiency. To ShOrten the Waiting time for the borrower to reduce the workload of staff, to facilitate the OPeration of its staff, improve the quality and level of man ageme nt, so efficie nt, in tellige nt man ageme

9、 nt, so as to improve the efficie ncy of in formatio n man ageme nt books to borrow purposes. Gen erated USing database tech no Iogy Iibrary loa n man ageme nt SyStem will greatly facilitate the borrower and SimPIify labor management and Staff of the library, so that Staff from the busy, complex wor

10、k into a SimPIe and efficie nt work.DeSig n of the SyStem in StriCt accorda nce With the method for database desig n, in cludi ng desig n of the database desig n and applicati ons, two PartS compleme nt each othe-. On the PrOgram ming and debugg ing USing a top-dow n, StePWiSe refi neme nt, the Prin

11、 ciple of gradual improveme nt. StrUCtUred functional module desig n SyStem function ,readable, easy to expa nd. SyStem database USed to Create SQL Sever, fron t-e nd developme nt USing JAVA Ian guage and ECIiPSe developme nt tools. Library of basic functions COmPrehe nsive, SyStematiC readable, eas

12、y to mai ntai n, update, SeCUrity is good.KeyWOrdS : Library management system; StrUCtUring; SQL Server; JAVA; ECliPSe目錄摘 要. IIAbstract . III第一章 課題背景 . 11.1 課題介紹 . 11.2 課題依據(jù)與內(nèi)容 . 21.3 工具介紹 . 2第二章 設(shè)計(jì)簡介及設(shè)計(jì)方案概述 . 42.1 需求分析 . 42.2 概念設(shè)計(jì) 6第三章 詳細(xì)設(shè)計(jì) . 73.1 邏輯設(shè)計(jì) 73.2 物理設(shè)計(jì) 8第四章 系統(tǒng)功能實(shí)現(xiàn) . 114.1 登錄模塊功能實(shí)現(xiàn) . 114.2

13、 管理員模塊功能實(shí)現(xiàn) . 174.3 讀者模塊功能實(shí)現(xiàn) . 32總 結(jié). 36致 謝. 37參考文獻(xiàn) . 38摘要對(duì)于日益擴(kuò)大的圖書館,借閱者或工作人員查找特定的書目總是勞神費(fèi)力,有時(shí)還 沒有結(jié)果。為了縮短借閱者的等待時(shí)間,減輕管理人員的工作量,提高管理的質(zhì)量和水 平,做到高效、智能化管理,從而達(dá)到提高圖書借閱信息管理效率的目的。采用數(shù)據(jù)庫 技術(shù)生成的圖書館借閱管理系統(tǒng)將會(huì)極大地方便借閱者, 使圖書館管理人員工作人員從 繁忙、復(fù)雜的工作進(jìn)入到一個(gè)簡單、高效的工作中。系統(tǒng)的設(shè)計(jì)嚴(yán)格按照數(shù)據(jù)庫設(shè)計(jì)的方法來進(jìn)行, 包括數(shù)據(jù)庫的設(shè)計(jì)和應(yīng)用程序的設(shè) 計(jì),兩部分相輔相成。在程序設(shè)計(jì)與調(diào)試上采用了自上而下,

14、逐步細(xì)化,逐步完善的原 則。采用結(jié)構(gòu)化的功能模塊設(shè)計(jì)系統(tǒng)功能,可讀性好,易于擴(kuò)充。系統(tǒng)數(shù)據(jù)庫用 SQL SeVer創(chuàng)建,前端開發(fā)使用JAVA語言和ECliPSe開發(fā)工具實(shí)現(xiàn)。圖書館基本功能全面, 系統(tǒng)可讀性好,易于維護(hù)、更新,安全性好。關(guān)鍵詞: 圖書管理系統(tǒng);結(jié)構(gòu)化; SQL SeVer;JAVA;ECliPSeAbStraCtFor growing library, borrow or find SPeCifiC bibliograPhy Staff alwayS laboriouS, SometimeS no reSultS. So often we Put a lot of manPow

15、er and finanCial reSourCeS but laCk of efficient management efficiency. To shorten the waiting time for the borrower to reduce the workload of staff, to facilitate the operation of its staff, improve the quality and level of management, so efficient, intelligent management, so as to improve the effi

16、ciency of information management books to borrow purposes. Generated using database technology library loan management system will greatly facilitate the borrower and simplify labor management and staff of the library, so that staff from the busy, complex work into a simple and efficient work.Design

17、 of the system in strict accordance with the method for database design, including design of the database design and applications, two parts complement each other. On the programming and debugging using a top-down, stepwise refinement, the principle of gradual improvement. Structured functional modu

18、le design system function, readable, easy to expand. System database used to create SQL Sever, front-end development using JAVA language and Eclipse development tools. Library of basic functions comprehensive, systematic readable, easy to maintain, update, security is good.Keywords :Library manageme

19、nt system; structuring; SQL Server; JAVA; Eclipse第一章 課題背景以前對(duì)信息管理的主要方式是基于文本、表格等紙介質(zhì)的手工處理,對(duì)于圖書借閱 情況(如借書天數(shù)、超過限定借書時(shí)間的天數(shù))的統(tǒng)計(jì)和核實(shí)等往往采用對(duì)借書卡的人 工檢查進(jìn)行,對(duì)借閱者的借閱權(quán)限、以及借閱天數(shù)等用人工計(jì)算、手抄進(jìn)行。數(shù)據(jù)信息 處理工作量大,容易出錯(cuò);由于數(shù)據(jù)繁多,容易丟失,且不易查找。采用數(shù)據(jù)庫技術(shù)生 成的圖書館借閱管理系統(tǒng)將會(huì)極大地方便借閱者,使圖書館管理人員工作人員從繁忙、 復(fù)雜的工作進(jìn)入到一個(gè)簡單、高效的工作中。1.1 課題介紹此小節(jié)從課題背景,課題目的與意義來詳細(xì)的介紹

20、課題。1.1.1 課題背景當(dāng)今時(shí)代是飛速發(fā)展的信息時(shí)代。在各行各業(yè)中離不開信息處理,計(jì)算機(jī)被廣泛應(yīng) 用于Windows系統(tǒng)環(huán)境。計(jì)算機(jī)的好處在于它能夠進(jìn)行信息管理。使用計(jì)算機(jī)進(jìn)行信息 控制,不僅提高了工作效率,而且大大的提高了安全性。圖書管理包括的圖書和用戶借 閱資料繁多,包含很多的信息數(shù)據(jù)的管理?,F(xiàn)今,有很多的圖書管理系統(tǒng)都是初步開始 使用,甚至尚未使用計(jì)算機(jī)進(jìn)行信息管理。 ?總的來說,缺乏系統(tǒng),規(guī)范的信息管理手段。盡管有的圖書館有計(jì)算機(jī),但是尚未 用于信息管理,沒有發(fā)揮它的效力,資源閑置比較突出,這就是圖書管理系統(tǒng)開發(fā)所要 解決的問題。因此,有必要建立一個(gè)圖書管理系統(tǒng),使圖書管理工作規(guī)范化

21、,系統(tǒng)化, 程序化,避免圖書管理的隨意性,提高信息處理的速度和準(zhǔn)確性,能夠及時(shí)、準(zhǔn)確、有 效的進(jìn)行查詢和修改圖書情況等圖書管理操作。1.1.2 課題目的與意義面對(duì)著龐大的信息量,傳統(tǒng)的人工方式管理會(huì)導(dǎo)致圖書館管理上的混亂,人力與物 力過多浪費(fèi),圖書館管理費(fèi)用的增加,從而使圖書館的負(fù)擔(dān)過重,影響整個(gè)圖書館的運(yùn) 作和控制管理。因此,本課程設(shè)計(jì)要求制定一套合理、有效,規(guī)范和實(shí)用的圖書管理系 統(tǒng),對(duì)圖書資料進(jìn)行集中統(tǒng)一的管理。 提高圖書管理工作效率,作到信息的規(guī)范管理, 科學(xué)統(tǒng)計(jì)和快速查詢,讓圖書館更好的為學(xué)校,社會(huì)服務(wù)。通過此次課程設(shè)計(jì)提高獨(dú)立分析問題、解決問題的能力,掌握信息管理系統(tǒng)的開發(fā) 方法和

22、步驟,熟悉從需求分析、數(shù)據(jù)庫設(shè)計(jì)(概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)、物理結(jié)構(gòu) 設(shè)計(jì))、編寫程序、測試分析過程。1.2 課題依據(jù)與內(nèi)容依據(jù)日益擴(kuò)大的圖書館需求,為了做到高效、智能化管理,達(dá)到高效的進(jìn)行圖書借 閱信息管理效率的目的。 采用數(shù)據(jù)庫技術(shù)生成的圖書館借閱管理系統(tǒng)將會(huì)極大地方便借 閱者,使圖書館管理人員進(jìn)入簡單、高效的工作中。系統(tǒng)結(jié)合JAVA語言和數(shù)據(jù)庫基礎(chǔ),達(dá)到了小型圖書管理系統(tǒng)的目的。系統(tǒng)的設(shè)計(jì) 嚴(yán)格按照數(shù)據(jù)庫設(shè)計(jì)的方法來進(jìn)行,包括數(shù)據(jù)庫的設(shè)計(jì)和應(yīng)用程序的設(shè)計(jì),兩部分相輔 相成。在程序設(shè)計(jì)與調(diào)試上采用了自上而下,逐步細(xì)化,逐步完善的原則。系統(tǒng)主要角 色有管理員和讀者, 管理員有登陸, 注冊,

23、修改密碼,管理讀者,管理圖書,借還書籍, 管理日志的功能;讀者有管理員有登陸,注冊,修改密碼,查詢圖書的功能。1.3 工具介紹此系統(tǒng)主要使用了 ECliPSe和SQL SerVerO1.3.1 Eclipse 簡介ECIiPSe是著名的跨平臺(tái)的自由集成開發(fā)環(huán)境(IDE)。最初主要用來JaVa語言開發(fā), 通過安裝不同的插件ECIiPSe可以支持不同的計(jì)算機(jī)語言,比如 C+和PythOn等開發(fā)工 具。ECIiPSe的本身只是一個(gè)框架平臺(tái),但是眾多插件的支持使得 ECIiPSe擁有其他功能 相對(duì)固定的IDE軟件很難具有的靈活性。許多軟件開發(fā)商以 ECIiPSe為框架開發(fā)自己的 IDE。在客戶機(jī)平臺(tái)上

24、,ECIiPSe使用插件來提供所有的附加功能,例如支持 JaVa以外的 其他語言。?ECIiPSe附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括 JaVa開發(fā)工具(JaVa Development TOOIS, JDT)O1.3.2 SQL SerVer 簡介SQL SerVer是由MiCrOSOft開發(fā)和推廣的關(guān)系數(shù)據(jù)庫管理系統(tǒng) (DBMS),目前最新 版本是2012年3月份推出的SQL SERVER 2012。SQL是英文(StrUCtUredQuery?Languag6的縮寫,意思為結(jié)構(gòu)化查詢語言。SQL語言的主要功能就是同各種數(shù) 據(jù)庫建立聯(lián)系,進(jìn)行溝通。SQL被作為關(guān)系型數(shù)據(jù)庫管理系統(tǒng)的標(biāo)準(zhǔn)語言。 SQ

25、L語句可 以用來執(zhí)行各種各樣的操作,例如更新數(shù)據(jù)庫中的數(shù)據(jù),從數(shù)據(jù)庫中提取數(shù)據(jù)等。第二章 設(shè)計(jì)簡介及設(shè)計(jì)方案概述整個(gè)應(yīng)用系統(tǒng)的設(shè)計(jì)嚴(yán)格按照數(shù)據(jù)庫設(shè)計(jì)的方法來進(jìn)行, 包括數(shù)據(jù)庫的設(shè)計(jì)和應(yīng)用 程序的設(shè)計(jì), 兩部分相輔相成。 數(shù)據(jù)庫設(shè)計(jì)過程包含以下步驟: 需求分析:系統(tǒng)的目的、 用戶需求、功能流程圖;概念結(jié)構(gòu)設(shè)計(jì):用 E-R 圖來描述實(shí)體及實(shí)體間的聯(lián)系;邏輯結(jié) 構(gòu)設(shè)計(jì):確定關(guān)系模式,各種約束的聲明,同時(shí)給出系統(tǒng)的功能模塊組成圖,系統(tǒng)各模 塊功能;物理結(jié)構(gòu)設(shè)計(jì)。數(shù)據(jù)庫的實(shí)施階段:數(shù)據(jù)庫用 SQL SERVER 等創(chuàng)建,前端開 發(fā)使用 JAVA 實(shí)現(xiàn)。2.1 需求分析所謂"需求分析 "

26、;,是指對(duì)要解決的問題進(jìn)行詳細(xì)的分析,弄清楚問題的要求,包括 需要輸入什么數(shù)據(jù),要得到什么結(jié)果,最后應(yīng)輸出什么。可以說需求分析是做系統(tǒng)之前 必做的。需求分析是軟件工程中的一個(gè)關(guān)鍵過程。在這個(gè)過程中,系統(tǒng)分析員和軟件工 程師確定顧客的需要。只有在確定了這些需要后,設(shè)計(jì)者才能夠分析和尋求新系統(tǒng)的解 決方法。需求分析階段的任務(wù)是確定軟件系統(tǒng)功能。2.1.1 用戶需求在構(gòu)造系統(tǒng)時(shí),首先從需求出發(fā)構(gòu)造數(shù)據(jù)庫表,然后再由數(shù)據(jù)庫表結(jié)合需求劃分系 統(tǒng)功能模塊。這樣,就把一個(gè)大的系統(tǒng)分解成了幾個(gè)小系統(tǒng)。這里把系統(tǒng)劃分為了三個(gè) 模塊:登錄模塊,管理員模塊,讀者模塊。模塊分別能夠?qū)崿F(xiàn)以下功能: ( 1)登錄模塊,實(shí)

27、現(xiàn)登錄功能, 注冊功能。 (2)管理員模塊,實(shí)現(xiàn)管理員修改密碼功能,讀者管理功能,圖書管理功能,新書入 庫功能, 管理日志功能。 (3)讀者模塊,實(shí)現(xiàn)讀者修改密碼功能,信息修改功能,圖書查詢功能,借還書籍功 能。2.1.2 系統(tǒng)目標(biāo)根據(jù)需求分析及用戶的溝通,該系統(tǒng)應(yīng)達(dá)到以下目標(biāo):(1)界面設(shè)計(jì)友好,美觀。( 2) 數(shù)據(jù)存儲(chǔ)安全,可靠。(3) 信息分類清晰,準(zhǔn)確。(4 )強(qiáng)大的查詢功能,保證數(shù)據(jù)查詢的靈活性。(5)操作簡單易用,界面清晰大方。( 6)系統(tǒng)安全穩(wěn)定。(7)開發(fā)技術(shù)先進(jìn),功能完備,擴(kuò)展性強(qiáng)。(8)占用資源少,對(duì)硬件要求低。(9)提供靈活,方便的權(quán)限設(shè)置功能,使整個(gè)系統(tǒng)的管理分工明確。

28、2.1.3 流程圖設(shè)計(jì)根據(jù)相應(yīng)的需求和概要的分析,設(shè)計(jì)的系統(tǒng)功能流程圖如 圖 2.1 所示。圖 2.1 功能流程圖2.2 概念設(shè)計(jì)概念設(shè)計(jì)是由分析用戶需求到生成概念產(chǎn)品的一系列有序的、可組織的、有目標(biāo)的 設(shè)計(jì)活動(dòng),它表現(xiàn)為一個(gè)由粗到精、由模糊到清晰、由抽象到具體的不斷進(jìn)化的過程。 概念設(shè)計(jì)即是利用設(shè)計(jì)概念并以其為主線貫穿全部設(shè)計(jì)過程的設(shè)計(jì)方法。 概念設(shè)計(jì)是完 整而全面的設(shè)計(jì)過程, 它通過設(shè)計(jì)概念將設(shè)計(jì)者繁復(fù)的感性和瞬間思維上升到統(tǒng)一的理 性思維從而完成整個(gè)設(shè)計(jì)。2.2.1 E-R 圖設(shè)計(jì)E-R圖也稱實(shí)體-聯(lián)系圖(Entity ReIatiOnship Diagram),提供了表示實(shí)體類型、屬性

29、 和聯(lián)系的方法,用來描述現(xiàn)實(shí)世界的概念模型。本系統(tǒng)E-R圖如圖2.2所示:圖2.2圖書館管理系統(tǒng)E-R圖第三章詳細(xì)設(shè)計(jì)概念設(shè)計(jì)是由分析用戶需求到生成概念產(chǎn)品的一系列有序的、可組織的、有目標(biāo)的 設(shè)計(jì)活動(dòng),它表現(xiàn)為一個(gè)由粗到精、由模糊到清晰、由抽象到具體的不斷進(jìn)化的過程。 概念設(shè)計(jì)即是利用設(shè)計(jì)概念并以其為主線貫穿全部設(shè)計(jì)過程的設(shè)計(jì)方法。概念設(shè)計(jì)是完整而全面的設(shè)計(jì)過程,它通過設(shè)計(jì)概念將設(shè)計(jì)者繁復(fù)的感性和瞬間思維上升到統(tǒng)一的理 性思維從而完成整個(gè)設(shè)計(jì)。3.1邏輯設(shè)計(jì)邏輯設(shè)計(jì)就是把一種計(jì)劃、規(guī)劃、設(shè)想通過視覺的形式通過概念、判斷、推理、論 證來理解和區(qū)分客觀世界的思維傳達(dá)出來的活動(dòng)過程。邏輯設(shè)計(jì)比物理設(shè)

30、計(jì)更理論化和抽象化,關(guān)注對(duì)象之間的邏輯關(guān)系,提供了更多系統(tǒng)和子系統(tǒng)的詳細(xì)描述。3.1.1關(guān)系模型概念結(jié)構(gòu)設(shè)計(jì)所得的E-R模型是對(duì)用戶需求的一種抽象的表達(dá)形式,它獨(dú)立于任何 一種具體的數(shù)據(jù)模型,因而也不能為任何一個(gè)具體的DBMS所支持。為了能夠建立起最終的物理系統(tǒng),還需要將概念結(jié)構(gòu)進(jìn)一步轉(zhuǎn)化為某一DBMS所支持的數(shù)據(jù)模型,然后根據(jù)邏輯設(shè)計(jì)的準(zhǔn)則、數(shù)據(jù)的語義約束、規(guī)范化理論等對(duì)數(shù)據(jù)模型進(jìn)行適當(dāng)?shù)恼{(diào)整和 優(yōu)化,形成合理的全局邏輯結(jié)構(gòu),并設(shè)計(jì)出用戶子模式。這就是數(shù)據(jù)庫邏輯設(shè)計(jì)所要完 成的任務(wù)。數(shù)據(jù)庫邏輯結(jié)構(gòu)的設(shè)計(jì)分為兩個(gè)步驟:首先將概念設(shè)計(jì)所得的E-R圖轉(zhuǎn)換為關(guān)系模型;然后對(duì)關(guān)系模型進(jìn)行優(yōu)化,如圖3.

31、1所示。圖3.1邏輯結(jié)構(gòu)設(shè)計(jì)過程關(guān)系模型是由一組關(guān)系(二維表)的結(jié)合,而E-R模型則是由實(shí)體、實(shí)體的屬性、實(shí) 體間的關(guān)系三個(gè)要素組成。所以要將 E-R模型轉(zhuǎn)換為關(guān)系模型,就是將實(shí)體、屬性和聯(lián) 系都要轉(zhuǎn)換為相應(yīng)的關(guān)系模型。本系統(tǒng)的關(guān)系模型轉(zhuǎn)換如下:PaSSWOrd( name,password,type)Reader(reader no,n ame,sex,grade,dep name,class)Book(book no ,bppk name,price,author,press,i ntime,isborrow) Man agelog(book no,book name,readerno,b

32、ha ndle,time,pay)3.1.2系統(tǒng)功能總框圖書館管理系統(tǒng)功能總框圖,如圖 3.2所示。圖3.2系統(tǒng)功能框架圖3.2物理設(shè)計(jì)數(shù)據(jù)庫在物理上的存儲(chǔ)結(jié)構(gòu)與存儲(chǔ)方法稱為數(shù)據(jù)庫的物理結(jié)構(gòu),它依賴于選定的數(shù)據(jù)庫管理系統(tǒng)。為一個(gè)給定的邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用要求的物理結(jié)構(gòu)的過 程,就是物理設(shè)計(jì)。3.2.1 基本表設(shè)計(jì)本系統(tǒng)設(shè)計(jì)的基本表如下:1.Password表記錄了可以使用戶進(jìn)入該系統(tǒng)的用戶名密碼及用戶類型,如表3-1所示表3-1管理員信息表字段名稱數(shù)據(jù)類型長度唯一性約束非空約束備注n amen VarChar50UniqueNot null用戶名,主鍵PaSSWOrdn VarCha

33、r50Not UniqUeNot null密碼typeChar10Not UniqUeNot null用戶類型2.Reader表記錄了庫中所有讀者的相關(guān)信息,如表3-2所示表3-2讀者表字段名稱數(shù)據(jù)類型長度唯一性約束非空約束備注reader nonv archar50UniqUeNot null學(xué)號(hào),主鍵n amenv archar50Not UniqueNot null姓名SeXn Char10Not UniqUeNot null性別gradenv archar50Not UniqUen Ull年級(jí)dep namenv archar50Not UniqUen Ull系別名classnv ar

34、char50Not UniqUen Ull班級(jí)3.Book 表記錄了庫內(nèi)所有圖書的所有資料,如表3-3所示表3-3圖書表字段名稱數(shù)據(jù)類型長度唯一性約束非空約束備注booknonv archar50UniqUeNot null書號(hào)book namenv archar50Not UniqUeNot null書名PriCen Char10Not UniqUeNot null價(jià)格authornv archar50Not UniqUeNot null作者PreSSnv archar50Not UniqUeNot null出版社in timenv archar50Not UniqUeNot null入庫時(shí)

35、間isborrown Char50Not UniqUen UIl是否借出4. ManageLog 表記錄借還書日志,用于存下所有對(duì)圖書操作的記錄,以便以后可以翻閱和查找,如表3-4所示。表3-4管理日志表字段名稱數(shù)據(jù)類型長度唯一性約束非空約束備注booknonv archar50UniqUeNot null書號(hào)book namenv archar50Not UniqUeNot null書名reader nonv archar50Not UniqUeNot null學(xué)號(hào)bha ndlenv archar10Not UniqUeNot null借還書timenv archar50Not UniqU

36、eNot null操作日期Paynv archar10Not UniqUeNot null已付款額第四章系統(tǒng)功能實(shí)現(xiàn)系統(tǒng)有3個(gè)模塊:登錄模塊,管理員模塊和讀者模塊。登錄模塊實(shí)現(xiàn)登錄功能, 注 冊功能;管理員模塊實(shí)現(xiàn)管理員修改密碼功能,讀者管理功能,圖書管理功能,新書入 庫功能,管理日志功能;讀者模塊實(shí)現(xiàn)讀者修改密碼功能,信息修改功能,圖書查詢 功能,借還書籍功能。4.1登錄模塊功能實(shí)現(xiàn)此模塊可以實(shí)現(xiàn)讀者與管理員登陸,用戶登陸的時(shí)候要選擇用戶類型,讀者和管理員可以實(shí)現(xiàn)的操作不同,新的用戶還可以點(diǎn)擊注冊按鈕進(jìn)行注冊。4.1.1 登錄功能功能介紹: 此功能是整個(gè)系統(tǒng)的基礎(chǔ)部分, 分為管理員登錄, 讀

37、者登錄和注冊按鈕。管理員可以通過此功能實(shí)現(xiàn)其余各個(gè)功能如修改密碼,讀者管理, 圖書管理,新書入庫,管理日志功能的功能。讀者可以通過此功能實(shí)現(xiàn)其余各個(gè)功能如修改密碼,信息修改, 圖書查詢,借還書籍功能。新用戶還可以通過此功能實(shí)現(xiàn)注冊功能。登錄界面如圖 4.1 所示。圖 4.1 登錄界面主要程序代碼如下:/數(shù)據(jù)庫連接代碼public class Textpad public static void main(String srg) 加載驅(qū)動(dòng)String userName = "lily" / 用戶名String userPwd = "1" /密碼Connec

38、tion dbConn;try Class.forName(driverName);dbConn = DriverManager.getConnection(dbURL, userName, userPwd);/ 如果連接成功 控制臺(tái)輸出 Connection Successful! catch (Exception e) e.printStackTrace();/界面設(shè)計(jì)public Login()j1= new JButtO n("確定");j2=new JBUttO n("取消");jlable1=new JLabel(" 用戶名 &qu

39、ot;);jlable2=new JLabel(" 密 碼");jrb1=new J RadiO B u ttO n ("管理員 ");jrb2=new JRadiOBUttO n("讀者");jrb3=new JRadiOBUttO n("注冊");/.pUblic vOid cOnfirm()/ 驗(yàn)證用戶和密碼是否存在/連接數(shù)據(jù)庫管理員界面如圖 4.2 所示。圖 4-2 管理員界面讀者登陸界面如圖 4.3 所示。圖 4.3 讀者界面主要程序代碼如下:Statement sql2=con.createStatem

40、ent();/執(zhí)行 SQL 語句String queryPassword="SELECT password FROM Password where name='"+name+"' and type='"+type+"'"ResultSet rspassword=sql2.executeQuery(queryPassword); if(rspassword.next()String ps=rspassword.getString(1).trim();if(ps.equals(password)&&

41、amp;type.equals("管理員")JOPtiOnPane.showMessageDialog(null,登錄成功","提示!", JOptionPane.INFORMATION_MESSAGE);new Administrator(name);f.dispose();else if(ps.equals(password )&&type.equals(讀者")new Reader(name);f.dispose();else JOPtiOnPane.showMessageDialog(null,密碼不正確&qu

42、ot;,"提示!", JOptionPane.YES_NO_OPTION);讀者界面如圖 4.4 所示。圖 4.4 讀者界面4.1.2 注冊功能功能介紹:該程序主要實(shí)現(xiàn)管理員和讀者注冊,以便于新的管理員和讀者能夠登錄使用圖書管理系統(tǒng)。按照標(biāo)簽提示輸入信息,然后點(diǎn)擊確定按鈕。首先在PaSSWOrd表中進(jìn)行查詢判斷用戶名文本框中輸入的文本信息是否已經(jīng)存在,如果存在,則提示用戶 名已經(jīng)被占用。如果符合規(guī)則,但還需要保證前后兩次的密碼相同,才能成功注冊。注冊成功的同時(shí),更新PaSSWOrd表,用戶名,密碼和用戶類型被插入 PaSSWOrd表。完成注 冊后返回登錄界面,用戶就可以登錄

43、了。注冊界面如圖 4.5 所示。圖 4.5 注冊界面主要程序代碼如下:public RegiSter()/界面設(shè)計(jì)public vOid cOnfirm() /連接數(shù)據(jù)庫COnnectiOn cOn=DriverManager.getCOnnectiOn(dbURL, uSerName, uSerPWd);/執(zhí)行SQL語句Statement Sql1=cOn.createStatement();String queryPaSSWOrd="SELECT paSSWOrd FROM PaSSWOrd Where name='"+name+"' &quo

44、t;ReSultSet rSpaSSWOrd=Sql1.executeQuery(queryPaSSWOrd); if(rSpaSSWOrd.next()String pS=rSpaSSWOrd.getString(1).trim();JoPtiO nPa ne.showMessageDialog( null,用戶名已經(jīng) 被占用,請(qǐng)更換! "," 提示! ", JOptiOnPane.YES_NO_OPTION);elSe if(PaSSWOrd.equalS(rePaSSWOrd) String queryRegiSter="inSert intO P

45、aSSWOrd(name,PaSSWOrd,tyPe)valueS('"+name+"','"+PaSSWOrd+"','"+tyPe+"');"Statement Sql2=cOn.createStatement(); Sql2.executeUPdate(queryRegiSter);JOPtiOnPane.showMessageDialog(null,注冊成功,返回登錄界面!"," 提示! ", JoPtiOnPane.INFoRMATIoN

46、_MESSAGE);neW Login(); f.disPose();else JOPtionPane.shoWMessageDialog(null,2" 次密碼不相同 "," 提示", JOPtionPane.YES_NO_OPTION);4.2 管理員模塊功能實(shí)現(xiàn) 管理員模塊實(shí)現(xiàn)管理員修改密碼,讀者管理,圖書管理,新書入庫,借還書籍,管 理日志的功能。4.2.1 修改密碼功能功能介紹: 該程序主要實(shí)現(xiàn)管理員修改密碼, 點(diǎn)擊修改密碼按鈕, 用戶名自動(dòng)顯示, 管理員需要按照標(biāo)簽提示輸入信息,然后點(diǎn)擊確定按鈕。首先在PaSSWOrd表中進(jìn)行查詢判斷用舊密碼

47、本框中輸入的文本信息是否正確,如果錯(cuò)誤,則提示舊密碼錯(cuò)誤。如果 正確,但還需要保證新密碼和重密碼相同,才能成功修改密碼。修改密碼成功的同時(shí), 更新PaSSWOrd表,下次管理員登錄必須使用新密碼。管理員修改密碼界面如圖4.6所示。圖 4.6 修改密碼界面主要程序代碼如下:public vOid updateM()Statement Sql1=cOn.createStatement();String queryPaSSWOrd="SELECT paSSWOrd FROM PaSSWOrd Where name='"+name+"' JReSultSe

48、t rSpaSSWOrd=Sql1.executeQuery(queryPaSSWOrd); if(rSpaSSWOrd.next()if(neWpaSSWOrd.equalS(repaSSWOrd)Statement Sql2=cOn.createStatement();String queryRegiSter="update PaSSWOrd Set paSSWOrd='"+neWpaSSWOrd+"'Where name='"+name+"'"Sql2.executeUpdate(queryReg

49、iSter);JoPtiOnPane.showMessageDialog(null,密碼修改成功!","提示!",JOptiOnPane.INFORMATION_MESSAGE);f.diSPOSe();elSe JOPtiOnPane.showMessageDialog(null,"2次密碼不相同","提示!", JoPtiOnPane.YES_No_oPTIoN);elseJOPtiOnPane.showMessageDialog(null,原密碼不正確!","提示!",JOPtionPan

50、e.YES_NO_OPTION);con.close();4.2.2 讀者管理功能功能介紹:該程序主要實(shí)現(xiàn)管理員對(duì)數(shù)據(jù)庫中讀者信息進(jìn)行查詢。點(diǎn)擊讀者管理按 鈕,所有讀者信息自動(dòng)顯示。管理員還可以按照讀者學(xué)號(hào)查詢特定讀者的信息。查詢時(shí) 首先在 Reader 表中進(jìn)行查詢判斷輸入的讀者學(xué)號(hào)是否存在,如果錯(cuò)誤,則提示讀者不 存在。如果正確,顯示對(duì)應(yīng)讀者的所有信息。查詢之后,點(diǎn)擊返回按鈕,可以繼續(xù)查詢 別的讀者信息。讀者信息界面如圖 4.7 所示,讀者信息查詢?nèi)鐖D 4.8 所示。圖 4.7 讀者信息界面圖 4.8 讀者信息查詢主要程序代碼如下:public void showAllReader()/連

51、接數(shù)據(jù)庫Statement sql1=con.createStatement();String queryPassword="select * from Reader "ResultSet rs=sql1.executeQuery(queryPassword);while(rs.next()/顯示相應(yīng)信息i+;count=""+i+""L.setText("讀者共有"+count+"名");f.repaint();con.close();/異常處理 .PubliC void ShOWReCOrd

52、o 顯示某個(gè)讀者信息/連接數(shù)據(jù)庫 .Connection con=DriverManager.getConnection(dbURL, userName, userPwd);String readerno1=tf.getText().trim();Statement sql1=con.createStatement();String queryPassword="SELECT * FROM Reader where readerno='"+readerno1+"' "ResultSet rs=sql1.executeQuery(query

53、Password);if(rs.next()JoPtiOnPane.showMessageDialog(null;查詢成功!","提示!",JOptionPane.INFORMATION_MESSA);GEf.repai nt();/將信息顯示在 JTable 的第一行 .else JOPtiOnPane.showMessageDialog(null,此讀者不存在!","提示!", JoptionPane.YES_No_CANCEL_oPTIoN);4.2.3 圖書管理功能 功能介紹:該程序主要實(shí)現(xiàn)管理員對(duì)數(shù)據(jù)庫中書籍進(jìn)行管理。點(diǎn)擊圖

54、書管理按鈕, 所有圖書信息自動(dòng)顯示。管理員還可以按照?qǐng)D書號(hào)查詢特定圖書的信息。查詢時(shí)首先在 Book 表中進(jìn)行查詢判斷輸入的圖書號(hào)是否存在,如果錯(cuò)誤,則提示圖書不存在。如果 正確,顯示對(duì)應(yīng)圖書的所有信息。查詢之后,點(diǎn)擊返回按鈕,可以繼續(xù)別的操作。輸入 圖書號(hào)點(diǎn)擊剔除按鈕,如果圖書號(hào)輸入正確,則成功剔除圖書。成功剔除圖書的同時(shí), 更新 Book 表,刪除對(duì)應(yīng)圖書。點(diǎn)擊返回,可以看見圖書數(shù)目減1,查詢剛才剔除的圖書,顯示圖書不存在。圖書管理界面如圖4.9 所示,圖書查詢?nèi)鐖D 4.10 所示,圖書剔除如圖 4.11 所示,返回界面如圖 4.12 所示。圖 4.9 圖書管理圖 4.10 圖書查詢圖 4

55、.11 圖書剔除圖 4.12 返回界面主要程序代碼如下:public void showAllBook()/顯示所有圖書信息public void showRecord() /顯示查詢的圖書信息PUbIiC void deleteRecord()/刪除圖書/連接數(shù)據(jù)庫/顯示要?jiǎng)h除圖書的信息JoPtiOnPane.showMessageDialog(nuII,確定要剔除此圖書?","提示!", JOptionPane.PLAIN_MESSAGE);/ 執(zhí)行 SQL 語句String queryDelete="delete from Book where b

56、ookno='"+bookno1+"'" Statement sql2=con.createStatement();sql2.executeUPdate(queryDelete);JOPtiOnPane.showMessageDiaIog(null,剔除成功!","提示!",JoPtionPane.INFoRMATIoN_MESSAGE);showAllBook();elseJOPtiO nPa ne.showMessageDialog( null,此圖書不存在!","提示!", JOPt

57、ionPane.YES_NO_CANCEL_OPTION); /異常處理4.2.4 新書入庫功能功能介紹:該程序主要實(shí)現(xiàn)管理員往數(shù)據(jù)庫 Book 表中添加新書的記錄,通過圖書查 詢中可查看最新的記錄。在新書信息輸入的過程中,會(huì)出現(xiàn)一些異常處理,如圖書號(hào)已 經(jīng)存在,則提示圖書號(hào)已經(jīng)存在。如果填寫的內(nèi)容正確則可以成功將新書添加入庫,同 時(shí)更新數(shù)據(jù)庫的 Book 表。新書入庫界面如圖 4.13,新書查詢所如圖 4.14 示。圖 4.13 新書入庫 圖 4.14 新書查詢主要程序代碼如下:Public void insertRecord() if(tf1.getText().equals("

58、")|tf2.getText().equals("")|tf3.getText().equals("")| tf4.getText().equals("")|tf5.getText().equals("")|tf6.getText().equals("")JOPtiO nPan e.showMessageDialog( null,情完善圖書信息!"," 輸入錯(cuò)誤 ", JOPtionPane.YES_NO_OPTION);return;/ 連接數(shù)據(jù)庫/執(zhí)行SQL語句Statement sql1=con.createStatement();String queryPassword="SELECT bookname FROM Book where bookno='"

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論