基于java的圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第1頁
基于java的圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第2頁
基于java的圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第3頁
基于java的圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第4頁
基于java的圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

畢業(yè)設(shè)計(jì)說明書題目:基于java的圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)產(chǎn)品設(shè)計(jì)工藝設(shè)計(jì)方案設(shè)計(jì)√類型:學(xué)生姓名:學(xué)號(hào):______學(xué)院:_________軟件學(xué)院_______________專業(yè):軟件技術(shù)(移動(dòng)應(yīng)用開發(fā)方向)班級(jí):_______學(xué)校指導(dǎo)教師:__________企業(yè)指導(dǎo)教師:____________________2015年12月1日摘要系統(tǒng)開發(fā)的總的設(shè)計(jì)目標(biāo)是實(shí)現(xiàn)圖書借閱的系統(tǒng)化、規(guī)范化和自動(dòng)化,實(shí)現(xiàn)對(duì)圖書資料的集中統(tǒng)一的管理,以及實(shí)現(xiàn)用戶在網(wǎng)上的對(duì)圖書的查詢與借閱。本文主要對(duì)圖書館管理系統(tǒng)開發(fā)的技術(shù)要求,及可行性進(jìn)行了分析。對(duì)整個(gè)系統(tǒng)及數(shù)據(jù)庫(kù)做出了需求分析,并對(duì)數(shù)據(jù)庫(kù)的結(jié)構(gòu)及數(shù)據(jù)表的建立依據(jù)分析與設(shè)計(jì)加以概括。在本說明書中簡(jiǎn)單描述了系統(tǒng)的基本功能要求,包括管理員、用戶、書籍信息的管理,圖書借閱及還入功能的實(shí)施方法。經(jīng)過仔細(xì)分析之后,對(duì)于系統(tǒng)的功能與實(shí)現(xiàn)流程也做了詳細(xì)的概述。其中,采用結(jié)構(gòu)圖對(duì)系統(tǒng)所包含的模塊進(jìn)行了描述,對(duì)于各模塊中數(shù)據(jù)的操作,則是用數(shù)據(jù)流程圖來表示的。最后,在系統(tǒng)實(shí)現(xiàn)的描述中加入了一些關(guān)鍵模塊的代碼及效果圖以便能更好將整個(gè)系統(tǒng)所采用的語言及功能表達(dá)出來。設(shè)計(jì)的實(shí)現(xiàn)主要應(yīng)用了Java語言編寫系統(tǒng),以Sql作為數(shù)據(jù)庫(kù)。本系統(tǒng)經(jīng)過了多次測(cè)試,基本功能都已實(shí)現(xiàn),完成了圖書借閱所需要滿足的要求,設(shè)計(jì)任務(wù)圓滿完成?!娟P(guān)鍵詞】:Java;c/s;Sql;數(shù)據(jù)庫(kù)設(shè)計(jì);數(shù)據(jù)查詢目錄摘要 .緒論1.1畢業(yè)設(shè)計(jì)主要任務(wù) 1.實(shí)現(xiàn)圖書館對(duì)所藏圖書的按類別、書名等多方面的查詢,最大的方便讀者和圖書館工作人員對(duì)所需圖書的查詢;2.建立圖書館外借讀者數(shù)據(jù)庫(kù),方便工作人員對(duì)讀者進(jìn)行有效管理;1.2目前圖書管理系統(tǒng)存在的問題1)檢索速度慢、效率低因?yàn)閳D書館的藏書種類多、數(shù)量多,將藏書準(zhǔn)確地分門別類,快速檢索,手工進(jìn)行非常困難,館中沒有此書或已被別人借走。圖書館的規(guī)模越大,這個(gè)問題越突出。2)借書、還書工作量大借書、還書頻率越大,說明圖書館的作用越大,然而隨之而來的大量的借書、還書登記、實(shí)存圖書的更新以及借出圖書超期、遺失等的處理,其工作量之大,往往是人工操作所難以勝任的。而且經(jīng)常會(huì)出現(xiàn)這樣那樣的差錯(cuò)。2.圖書借閱管理需求分析2.1可行性分析采用現(xiàn)代化統(tǒng)一的計(jì)算機(jī)信息系統(tǒng),能夠有效優(yōu)化圖書館管理系統(tǒng),使其高效的發(fā)揮最大作用,能夠迅捷的為讀者提供相應(yīng)的服務(wù)。2.2圖書借閱管理系統(tǒng)需求概述2.2.1系統(tǒng)目標(biāo)該系統(tǒng)主要建立一個(gè)基于C/S模式的圖書館借閱管理系統(tǒng),面對(duì)當(dāng)起很多小型圖書管理仍是人工管理帶來的檢索速度慢,效率低,借閱歸還圖書量大,圖書統(tǒng)計(jì)工作量大,藏書不能完成及時(shí)更新的問題,該系統(tǒng)可以對(duì)跟系統(tǒng)的三個(gè)用戶類型的使用實(shí)現(xiàn):1.對(duì)于讀者在本系統(tǒng)的應(yīng)用下可實(shí)現(xiàn)按照各種方式(如:書名,出版社,作者)查詢圖書館的藏書清單,方便的借閱圖書,續(xù)借圖書,歸還圖書,能夠查詢自己的借閱圖書情況2.2.2用戶類和用戶特性圖書借閱管理系統(tǒng)是一個(gè)基于C/S模式的對(duì)圖書館進(jìn)行高效率管理的應(yīng)用系統(tǒng),它的用戶主要是讀者和圖書管理員,學(xué)生通過該系統(tǒng)進(jìn)行圖書查詢進(jìn)而對(duì)自己需要的圖書進(jìn)行借閱及自己的借閱情況進(jìn)行查詢,圖書管理員則通過本系統(tǒng)實(shí)現(xiàn)對(duì)圖書及讀者的高效管理,除此之外,還需要一個(gè)系統(tǒng)管理員對(duì)不同的用戶進(jìn)行權(quán)限的設(shè)置等操作。3.總體設(shè)計(jì)3.1數(shù)據(jù)庫(kù)設(shè)計(jì)3.1.1數(shù)據(jù)庫(kù)設(shè)計(jì)概述數(shù)據(jù)庫(kù)是整個(gè)系統(tǒng)的基石,數(shù)據(jù)庫(kù)的設(shè)計(jì)優(yōu)劣直接影響到整個(gè)系統(tǒng)的設(shè)計(jì)成敗,本節(jié)對(duì)數(shù)據(jù)庫(kù)的設(shè)計(jì)進(jìn)行專門闡述。數(shù)據(jù)庫(kù)系統(tǒng)的出現(xiàn)使信息系統(tǒng)從以加工數(shù)據(jù)的程序?yàn)橹行霓D(zhuǎn)向圍繞共享的數(shù)據(jù)庫(kù)為中心的新階段。3.2.1圖書管理系統(tǒng)總體結(jié)構(gòu)圖繪制系統(tǒng)結(jié)構(gòu)圖的過程,實(shí)際上就是對(duì)系統(tǒng)功能模塊進(jìn)行分解設(shè)計(jì)的過程,即合理地將數(shù)據(jù)流程圖轉(zhuǎn)變?yōu)樗枰南到y(tǒng)結(jié)構(gòu)圖。系統(tǒng)結(jié)構(gòu)圖將會(huì)使讀者和用戶能直觀的了解系統(tǒng)的結(jié)構(gòu)模式,理解系統(tǒng)的各個(gè)功能的結(jié)構(gòu),能很好地方便用戶使用和理解整個(gè)系統(tǒng)。本系統(tǒng)的結(jié)構(gòu)圖如下:圖3-2-1:圖書管理模式流程根據(jù)需求分析的結(jié)果,按照“低耦合、高內(nèi)聚”的原則,本系統(tǒng)將劃分為以下主要功能模塊:管理員管理功能模塊,學(xué)生用戶管理功能模塊,圖書管理功能模塊,圖書借閱預(yù)約功能模塊,圖書歸還掛失功能模塊,圖書查詢功能模塊.4.程序設(shè)計(jì)與編碼4.1開發(fā)平臺(tái)與工具4.1.1J2SE平臺(tái)J2SE是Java2standardedition是Java2的標(biāo)準(zhǔn)版,主要用于桌面應(yīng)用軟件的編程,StandardEdition(標(biāo)準(zhǔn)版)J2SE包含那些構(gòu)成Java語言核心的類。比如:數(shù)據(jù)庫(kù)連接、接口定義、輸入/輸出、網(wǎng)絡(luò)編程。4.1.2開發(fā)中使用的類與接口的描述1.開發(fā)圖形界面所用類:JFrame:Swing的三個(gè)基本構(gòu)造塊:標(biāo)簽、按鈕和文本字段;但是現(xiàn)在需要個(gè)地方安放它們,并希望用戶知道如何處理它們。JFrame類就是解決這個(gè)問題的——它是一個(gè)容器,允許程序員把其他組件添加到它里面,把它們組織起來,并把它們呈現(xiàn)給用戶。JPanel:JPanel是一個(gè)容器,可以向其中添加其他的GUI組件(如按鈕JButton組件);但是JPanel不是頂層容器,因此在屏幕上顯示JPanel,必須將它添加到一個(gè)頂層容器(如JFrame)中。JSplitPane:SplitPane(分割面版)一次可將兩個(gè)組件同時(shí)顯示在兩個(gè)顯示區(qū)中,若你想要同時(shí)在多個(gè)顯示區(qū)顯示組件,你便必須同時(shí)使用多個(gè)SplitPane。JLabel:用于短文本字符串或圖像或二者的顯示區(qū)。JTextField:是一個(gè)輕量級(jí)組件,它允許編輯單行文本。JTextArea:是一個(gè)顯示純文本的多行區(qū)域。JPasswordField:JPasswordField是一個(gè)輕量級(jí)組件,允許編輯單行文本,其視圖指示鍵入內(nèi)容,但不顯示原始字符。JButton:"push"按鈕的實(shí)現(xiàn)。通過Action可配置按鈕,并進(jìn)行一定程度的控制。JScrollpane:提供輕量級(jí)組件的scrollable視圖。JScrollPane管理視口、可選的垂直和水平滾動(dòng)條以及可選的行和列標(biāo)題視口。4.2程序設(shè)計(jì)4.2.1程序設(shè)計(jì)概述 本系統(tǒng)是窗口式應(yīng)用軟件,采用C/S模式來設(shè)計(jì),所以各個(gè)模塊內(nèi)的每一個(gè)功能都要用窗口來顯示。為了體現(xiàn)程序的封裝性,每個(gè)窗口用一個(gè)類來實(shí)現(xiàn)。為實(shí)現(xiàn)窗口視圖,應(yīng)用的類都有繼承窗口類對(duì)象,并實(shí)現(xiàn)事件響應(yīng)監(jiān)聽接口,以便使用時(shí)產(chǎn)生相應(yīng)功能的事件響應(yīng).4.2.2數(shù)據(jù)庫(kù)的連接與關(guān)閉 利用JDBC訪問數(shù)據(jù)庫(kù)包含三個(gè)步驟:建立與數(shù)據(jù)庫(kù)的連接;通過發(fā)送SQL語句對(duì)數(shù)據(jù)庫(kù)進(jìn)行讀寫;處理語句的執(zhí)行結(jié)果,特別是查詢語句的返回?cái)?shù)據(jù)。4.2.3登錄模塊程序設(shè)計(jì)本模塊主要是用戶通過圖書管理系統(tǒng)的首頁登錄進(jìn)入該系統(tǒng)。用戶輸入正確的用戶名和密碼,系統(tǒng)會(huì)根據(jù)用戶的身份進(jìn)行相應(yīng)權(quán)限劃分;如果登錄信息有錯(cuò)誤,則系統(tǒng)提示登入錯(cuò)誤的信息,并且禁止系統(tǒng)用戶進(jìn)行任何操作。圖書借閱管理系統(tǒng)的登錄主頁面。圖4-2-3:登陸界面用戶在登錄頁面寫好用戶名和密碼,選擇登錄,登錄成功則跳轉(zhuǎn)到系統(tǒng)的首頁,否則提示錯(cuò)誤信息。圖4-2-3:管理員模式流程4.2.4圖書管理功能模塊的實(shí)現(xiàn)與學(xué)生管理模塊類似,圖書管理模塊也為圖書狀態(tài)管理和圖書信息管理模塊,其中圖書狀態(tài)管理功能判斷圖書是否被借閱或被預(yù)約,圖書信息管理是管理維護(hù)圖書館藏書的基本信息。其模塊操作界面為:圖4-2-4:圖書修改信息4.2.5圖書歸還掛失模塊的實(shí)現(xiàn)該功能模塊分為圖書歸還,圖書掛失功能。1)圖書歸還。該子模塊實(shí)現(xiàn)系統(tǒng)的圖書歸還功能,學(xué)生用戶向圖書管理員提供自己的編號(hào)會(huì)顯示出學(xué)生當(dāng)前的借閱情況,再提供要?dú)w還的圖書編號(hào),圖書管理員將信息記錄在系統(tǒng)中,歸還成功。2)圖書掛失。該子模塊的實(shí)現(xiàn)與圖書歸還類似,區(qū)別在于對(duì)數(shù)據(jù)庫(kù)的操作不同。其操作界面如下圖:圖4-2-5:管理員模式流程4.2.6圖書查詢模塊的實(shí)現(xiàn)圖書查詢模塊主要實(shí)現(xiàn)用戶對(duì)圖書的信息分別可根據(jù)圖書名稱、出版社和作者進(jìn)行查詢的功能模塊,其中簡(jiǎn)單查詢?yōu)閱我坏牟樵?,根?jù)其中一項(xiàng)對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢返回結(jié)果;而高級(jí)查詢則將查詢精確化,使其根據(jù)多項(xiàng)數(shù)據(jù)進(jìn)行查詢。其實(shí)現(xiàn)的操作界面如下所示:圖4-2-6:圖書查詢模塊的實(shí)現(xiàn)/* *查詢圖書相關(guān)信息 * */ publicstaticListselectBookInfo(){ Listlist=newArrayList(); Stringsql="select*fromtb_bookInfo"; ResultSetrs=Dao.executeQuery(sql); try{ while(rs.next()){ BookInfobookinfo=newBookInfo(); bookinfo.setISBN(rs.getString("ISBN")); bookinfo.setTypeid(rs.getString("typeid")); bookinfo.setBookname(rs.getString("bookname")); bookinfo.setWriter(rs.getString("writer")); bookinfo.setTranslator(rs.getString("translator")); bookinfo.setPublisher(rs.getString("publisher")); bookinfo.setDate(rs.getDate("date")); bookinfo.setPrice(rs.getDouble("price")); list.add(bookinfo); } }catch(Exceptione){ e.printStackTrace(); } Dao.close(); returnlist; } publicstaticListselectBookInfo(StringISBN){ Listlist=newArrayList(); Stringsql="select*fromtb_bookInfowhereISBN='"+ISBN+"'"; ResultSetrs=Dao.executeQuery(sql); try{ while(rs.next()){ BookInfobookinfo=newBookInfo(); bookinfo.setISBN(rs.getString("ISBN")); bookinfo.setTypeid(rs.getString("typeid")); bookinfo.setBookname(rs.getString("bookname")); bookinfo.setWriter(rs.getString("writer")); bookinfo.setTranslator(rs.getString("translator")); bookinfo.setPublisher(rs.getString("publisher")); bookinfo.setDate(rs.getDate("date")); bookinfo.setPrice(rs.getDouble("price")); list.add(bookinfo); } }catch(Exceptione){ e.printStackTrace(); } Dao.close(); returnlist; }5.結(jié)論結(jié)論是畢業(yè)設(shè)計(jì)說明書的最終的、總體的敘述,應(yīng)該準(zhǔn)確、完整、明確、精練。一般應(yīng)包括以下幾個(gè)方面:第一,高度概括說明解決了什么問題,建立了什么方法,發(fā)現(xiàn)了什么規(guī)律,有何創(chuàng)建等;第二,課題結(jié)果的實(shí)用價(jià)值或應(yīng)用前景,對(duì)其創(chuàng)造性做出簡(jiǎn)要評(píng)價(jià);第三,不足之處或遺留未予解決的問題,以及解決這些問題的可能關(guān)鍵點(diǎn)和方向。在系統(tǒng)開發(fā)之前,必須了解該系統(tǒng)的特點(diǎn)、適用范圍以及使用者需要一個(gè)什么樣的系統(tǒng),以此作為基礎(chǔ)為開發(fā)系統(tǒng)準(zhǔn)確定位,然后對(duì)使用者所需實(shí)現(xiàn)的功能進(jìn)行分析總結(jié),根據(jù)使用者的實(shí)際要求來給系統(tǒng)設(shè)計(jì)一個(gè)初步方案。系統(tǒng)的開發(fā)不僅是要實(shí)現(xiàn)對(duì)數(shù)據(jù)處理的及時(shí)與正確,而且要考慮系統(tǒng)是否具有控制功能,及時(shí)將數(shù)據(jù)反饋給操作者,以進(jìn)行監(jiān)測(cè)和協(xié)調(diào),保證系統(tǒng)的正常運(yùn)行;也要考慮是否具有預(yù)測(cè)功能,運(yùn)用一定的數(shù)學(xué)方法利用歷史的數(shù)據(jù)對(duì)未來進(jìn)行預(yù)測(cè)的工作。參考文獻(xiàn)[1]孫衛(wèi)琴,李洪成.《Tomcat與JavaWeb開發(fā)技術(shù)詳解》.電子工業(yè)出版社,2013年6月:1-205[2]BruceEckel.《Java編程思想》.機(jī)械工業(yè)出版社,2013年10月:1-378[3]FLANAGAN.《Java技術(shù)手冊(cè)》.中國(guó)電力出版社,2012年6月:1-465[4]孫一林,彭波.《Java數(shù)據(jù)庫(kù)編程實(shí)例》.清華大學(xué)出版社,2012年8月:30-210[5]LEEANNEPHILLIPS.《巧學(xué)活用HTML4》.電子工業(yè)出版社,2014年8月:1-319[6]飛思科技產(chǎn)品研發(fā)中心.《JSP應(yīng)用開發(fā)詳解》.電子工業(yè)出版社,2013年9月:32-300[7]耿祥義,張躍平.《JSP實(shí)用教程》.清華大學(xué)出版社,2013年5月1日:1-354[8]孫涌.《現(xiàn)代軟件工程》.北京希望電子出版社,2013年8月:1-246[9]薩師煊,王珊.《數(shù)據(jù)庫(kù)系統(tǒng)概論》.高等教育出版社,20

溫馨提示

  • 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. 人人文庫(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)論