計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)專業(yè)論文-團(tuán)書(shū)館管理系統(tǒng)設(shè)計(jì)_第1頁(yè)
計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)專業(yè)論文-團(tuán)書(shū)館管理系統(tǒng)設(shè)計(jì)_第2頁(yè)
計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)專業(yè)論文-團(tuán)書(shū)館管理系統(tǒng)設(shè)計(jì)_第3頁(yè)
計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)專業(yè)論文-團(tuán)書(shū)館管理系統(tǒng)設(shè)計(jì)_第4頁(yè)
計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)專業(yè)論文-團(tuán)書(shū)館管理系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩46頁(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)介

./編號(hào):審定成績(jī):畢業(yè)設(shè)計(jì)〔論文設(shè)計(jì)〔論文題目:團(tuán)書(shū)館管理系統(tǒng)學(xué)院名稱:計(jì)算機(jī)學(xué)院學(xué)生姓名:專業(yè):計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)班級(jí):學(xué)號(hào):指導(dǎo)教師:答辯組負(fù)責(zé)人:填表時(shí)間:年月.摘要二十一世紀(jì)是信息的社會(huì),信息作為社會(huì)最主要的資源,將成為戰(zhàn)略資源引起人們廣泛的關(guān)注??茖W(xué)技術(shù)日新月異的進(jìn)步,讓人類生活發(fā)生了巨大的變化,計(jì)算機(jī)技術(shù)的飛速發(fā)展,使各行各業(yè)在計(jì)算機(jī)技術(shù)應(yīng)用方面得到了廣泛的普及和使用。因此,書(shū)社管理系統(tǒng)也以方便、快捷、費(fèi)用低的優(yōu)點(diǎn)正慢慢地進(jìn)入人們的生活,將傳統(tǒng)的手工圖書(shū)管理方式徹底的解脫出來(lái),提高效率,減輕圖書(shū)館管理員以往繁忙的工作,減小出錯(cuò)的概率,使會(huì)員可以花更多的時(shí)間在自己喜歡的書(shū)上。從而使會(huì)員更好的獲取信息、了解信息、掌握信息。圖書(shū)館管理系統(tǒng)是典型的信息管理系統(tǒng)<MIS>,其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。因此本人結(jié)合開(kāi)放式書(shū)店的要求,對(duì)access數(shù)據(jù)庫(kù),及其相應(yīng)的組件功能、JAVA應(yīng)用程序設(shè)計(jì),對(duì)數(shù)據(jù)庫(kù)技術(shù)進(jìn)行了較深入的學(xué)習(xí)和應(yīng)用,主要完成對(duì)書(shū)社管理系統(tǒng)的需求分析、功能模塊劃分、數(shù)據(jù)庫(kù)模式分析,并由此設(shè)計(jì)了數(shù)據(jù)庫(kù)結(jié)構(gòu)和應(yīng)用程序。系統(tǒng)運(yùn)行結(jié)果證明,本文所設(shè)計(jì)的圖書(shū)館管理系統(tǒng)可以滿足各個(gè)高等學(xué)院的需要。實(shí)現(xiàn)了數(shù)據(jù)庫(kù)表的瀏覽,記錄的添加、刪除和修改,實(shí)現(xiàn)了多種條件查詢等。設(shè)計(jì)充分利用JAVA、access數(shù)據(jù)庫(kù)技術(shù)的強(qiáng)大力量,提高了編程效率和可靠性。[關(guān)鍵詞]JAVASQL語(yǔ)言access數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)組件圖書(shū)館管理系統(tǒng)手工圖書(shū)管理設(shè)計(jì)信息ABSTRACTThetwenty-firstcenturyistheinformationsociety,informationasthemostimportantresourcesofthecommunitywillbecomestrategicresourcesattractedwidespreadattention.Therapidprogressofscienceandtechnology,sothathumanlifehasundergonetremendouschanges,therapiddevelopmentofcomputertechnology,sothatvarioussectorsintheapplicationofcomputertechnologyiswidelyspreadanduse.Therefore,thepublishinghousemanagementsystemisalsoaconvenient,fast,low-costadvantageisslowlyenteringpeople'slives,thetraditionallibrarymanagementmanualthoroughlyfreed,improveefficiency,reducetheheavyworkloadthepast,librarians,reducingasmallerrorprobability,Sothatmemberscanspendmoretimeinyourfavoritebook.Sothatmembersbetteraccesstoinformation,understandinginformation,accesstoinformation。Librarymanagementsystemisatypicalmanagementinformationsystem<MIS>,itsdevelopmentincludetheestablishmentandmaintenanceofback-enddatabaseandfront-endapplicationdevelopmentaspects.Fortheformerrequiretheestablishmentofdataconsistencyandintegrityofthestrongdatasecurityandgoodlibraries.Forthelatterprocedurerequirestheapplicationoffull-featured,easytouseandsoon.Therefore,Icombinedanopenbookstoreattherequestofaccessdata,anditscorrespondingcomponentfunction,JAVAapplicationprogramming,databasetechnologywasmorein-depthstudyandapplicationofthemainbookstoremanagementsystemtocompletetherequirementsanalysis,functionalmoduledivision,databasemodeling,andthusdesignedthedatabasestructureandapplications.Systemoperationresultsdemonstratethatthislibrarymanagementsystemdesignedtomeettheneedsofthevariousinstitutionsofhigherlearning.Implementationofthedatabasetablebrowsing,recordstoadd,deleteandmodifytoachieveavarietyofconditionsforinquiries.DesignedtotakefulladvantageofJAVA,accessthepowerofdatabasetechnologytoimprovetheprogrammingefficiencyandreliability.[Keywords]JAVASQLlanguageaccessdatabasedatabasecomponentsthelibrarymanagementsystemmanuallibrarymanagementdesigninformation目錄前言1第一章GSM移動(dòng)通信系統(tǒng)概述3第一節(jié)JAVA技術(shù)3一、3二、JDBC3第二節(jié)MVC技術(shù)4一、MVC模型介紹5二、MVC設(shè)計(jì)模式的實(shí)現(xiàn)6三、MVC設(shè)計(jì)模式的優(yōu)點(diǎn)7最后,它還有利于軟件工程化管理。由于不同的層各司其職,每一層不同的應(yīng)用具有某些相同的特征,有利于通過(guò)工程化、工具化產(chǎn)生管理程序代碼。7第三節(jié)SQL介紹7一、SQL基礎(chǔ)7二、SQL語(yǔ)句9第四節(jié)開(kāi)發(fā)環(huán)境10第二章數(shù)據(jù)庫(kù)設(shè)計(jì)11第一節(jié)數(shù)據(jù)系統(tǒng)分析11一、系統(tǒng)用例圖12二、主要用例分析12第二節(jié)數(shù)據(jù)庫(kù)系統(tǒng)12一、數(shù)據(jù)庫(kù)13二、數(shù)據(jù)采集13第三節(jié)數(shù)據(jù)處理流程13一、主流程13二、借書(shū)流程13三、還書(shū)流程14四、圖書(shū)管理操作流程14第四節(jié)E-R圖14第五節(jié)數(shù)據(jù)表結(jié)構(gòu)16一、user數(shù)據(jù)表結(jié)構(gòu)16二、information數(shù)據(jù)表結(jié)構(gòu)16三、borrow數(shù)據(jù)表結(jié)構(gòu)16四、books數(shù)據(jù)表結(jié)構(gòu)17第3章系統(tǒng)實(shí)現(xiàn)18第一節(jié)系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)18第二節(jié)系統(tǒng)模塊實(shí)現(xiàn)18一、系統(tǒng)登錄模塊實(shí)現(xiàn)18二、系統(tǒng)管理模塊實(shí)現(xiàn)19三、借書(shū)模塊實(shí)現(xiàn)20四、還書(shū)模塊實(shí)現(xiàn)21第4章系統(tǒng)代碼設(shè)計(jì)及時(shí)序圖22第一節(jié)系統(tǒng)類圖22第二節(jié)主要時(shí)序圖23第五章編碼實(shí)現(xiàn)與測(cè)試25第一節(jié)類25一、AddUser類25二、Password類25三、ChangeUser類26四、Land類27五、MainMenu類27六、HuanD類28七、ShiJian類28八、SearchBInformation類29九、Blend類29十、Dataconnection類30第二節(jié)用戶手冊(cè)30一、軟件概述30二、運(yùn)行環(huán)境要求311、硬件312、軟件31第三節(jié)系統(tǒng)安裝與運(yùn)行32一、安裝32二、運(yùn)行32第6章畢業(yè)設(shè)計(jì)總結(jié)36結(jié)論37參考文獻(xiàn)38附錄:系統(tǒng)源程序39一、Land類39二、MainMenu類41三、Password類43四、Dataconnection類44五、SearchBInformation類45六、ChangeUser類47七、AddUser類49八、BLend類51九、DataSrc類56十、ShiJian類57十一、HuanD類60.前言研究背景及研究意義隨著社會(huì)信息量的與日俱增,作為信息存儲(chǔ)的主要媒體之一圖書(shū),數(shù)量、規(guī)模比以往任何時(shí)候都大的多,不論個(gè)人還是圖書(shū)管理部門都需要使用方便而有效的方式來(lái)管理自己的書(shū)籍。在計(jì)算機(jī)日益普及的今天,對(duì)個(gè)人而言若采用一套行之有效的圖書(shū)管理系統(tǒng)來(lái)管理自己的書(shū)籍,會(huì)方便許多。對(duì)圖書(shū)管理部門而言,以前單一的手工檢索已不能滿足人們的要求,為了便于圖書(shū)資料的管理而設(shè)計(jì)出圖書(shū)館管理系統(tǒng)。"圖書(shū)管理管理系統(tǒng)"主要目的是利用java語(yǔ)言編制一個(gè)管理軟件,用以實(shí)現(xiàn)讀書(shū)管理員對(duì)圖書(shū)多項(xiàng)管理。同時(shí)對(duì)整個(gè)系統(tǒng)的分析、設(shè)計(jì)過(guò)程給出一個(gè)完整論證。學(xué)校讀書(shū)館系統(tǒng)是一種基于集中統(tǒng)一規(guī)劃的數(shù)據(jù)庫(kù)數(shù)據(jù)管理新模式。在對(duì)圖書(shū)、師生的管理,其實(shí)是對(duì)圖書(shū)、讀者數(shù)據(jù)的管理。本系統(tǒng)的建成無(wú)疑會(huì)為圖書(shū)管理員提供極大的幫助。本系統(tǒng)的設(shè)計(jì)主要從以下幾方面做起:系統(tǒng)業(yè)務(wù)流程分析、系統(tǒng)的功能設(shè)計(jì)、系統(tǒng)的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)、系統(tǒng)輸入/輸出設(shè)計(jì)等。作這些工作需對(duì)數(shù)據(jù)庫(kù)知識(shí)有足夠認(rèn)識(shí),并深入的了解Eclipse3.2的使用和管理系統(tǒng)的相關(guān)知識(shí)。GSM是一個(gè)開(kāi)放的標(biāo)準(zhǔn)系統(tǒng),自1992年投入商用以來(lái),GSM標(biāo)準(zhǔn)得到不斷驗(yàn)證,而且穩(wěn)步發(fā)展。現(xiàn)在的核心問(wèn)題就是數(shù)據(jù)通信,包括承載業(yè)務(wù)和115kbit/s的分組交換數(shù)據(jù)業(yè)務(wù),另外,GSM將成為最復(fù)雜的移動(dòng)電話系統(tǒng)——覆蓋整個(gè)地球的衛(wèi)星系統(tǒng)的基礎(chǔ)。GSM正在不斷進(jìn)入新的應(yīng)用領(lǐng)域,如開(kāi)發(fā)微蜂窩、微微蜂窩基站,為室內(nèi)商業(yè)環(huán)境提供無(wú)縫無(wú)線接入。對(duì)于GSM通信系統(tǒng)和移動(dòng)網(wǎng)絡(luò),在論文中都將得到詳細(xì)和完整的介紹。由此可見(jiàn),GSM網(wǎng)絡(luò)正在處于飛速發(fā)展階段。因此加強(qiáng)網(wǎng)絡(luò)優(yōu)化,搞好運(yùn)行維護(hù)是提高移動(dòng)通信網(wǎng)絡(luò)質(zhì)量的關(guān)鍵。一個(gè)完善的網(wǎng)絡(luò)往往需要經(jīng)歷從最初的網(wǎng)絡(luò)規(guī)劃、工程建設(shè)投入使用,到網(wǎng)絡(luò)優(yōu)化的歷程,并形成良性循環(huán)。目標(biāo)本次畢業(yè)設(shè)計(jì)題目:"圖書(shū)管理管理系統(tǒng)"針對(duì)的用戶是學(xué)校圖書(shū)室。相應(yīng)的需求有:1.能夠存儲(chǔ)一定數(shù)量的圖書(shū)信息,并方便有效的進(jìn)行相應(yīng)的書(shū)籍?dāng)?shù)據(jù)操作和管理,這主要包括:1>圖書(shū)信息的錄入、刪除及修改。2>圖書(shū)信息的多關(guān)鍵字檢索查詢。3>圖書(shū)的出借、返還和資料統(tǒng)計(jì)。2.能夠?qū)σ欢〝?shù)量的讀者進(jìn)行相應(yīng)的信息存儲(chǔ)與管理,這其中包括:1>讀者信息的登記、刪除及修改;2>讀者資料的統(tǒng)計(jì)與查詢。第一章GSM移動(dòng)通信系統(tǒng)概述第一節(jié)JAVA技術(shù)Java簡(jiǎn)介Java是由SunMicrostems公司于1995年5月推出的Java程序設(shè)計(jì)語(yǔ)言〔以下簡(jiǎn)稱Java語(yǔ)言和Java平臺(tái)的總稱。用Java實(shí)現(xiàn)的HotJava瀏覽器〔支持Javaapplet顯示了Java的魅力:跨平臺(tái)、動(dòng)態(tài)的Web、Internet計(jì)算。從此,Java被廣泛接受并推動(dòng)了Web的迅速發(fā)展,常用的瀏覽器現(xiàn)在均支持Javaapplet。另一方面,Java技術(shù)也不斷更新。Java分為三個(gè)體系JavaSE<Java2PlatformStandardEdition,java平臺(tái)標(biāo)準(zhǔn)版>,JavaEE<Java2Platform,EnterpriseEdition,java平臺(tái)企業(yè)版>,JavaME<Java2PlatformMicroEdition,java平臺(tái)微型版>。二、JDBCJDBC<JavaDataBaseConnectivity>是Java與數(shù)據(jù)庫(kù)的接口規(guī)范,JDBC定義了一個(gè)支持標(biāo)準(zhǔn)SQL功能的通用低層的應(yīng)用程序編程接口<API>,它由Java語(yǔ)言編寫(xiě)的類和接口組成,旨在讓各數(shù)據(jù)庫(kù)開(kāi)發(fā)商為Java程序員提供標(biāo)準(zhǔn)的數(shù)據(jù)庫(kù)API。JDBCAPI定義了若干Java中的類,表示數(shù)據(jù)庫(kù)連接、SQL指令、結(jié)果集、數(shù)據(jù)庫(kù)元數(shù)據(jù)等。它允許Java程序員發(fā)送SQL指令并處理結(jié)果。通過(guò)驅(qū)動(dòng)程序管理器,JDBCAPI可利用不同的驅(qū)動(dòng)程序連接不同的數(shù)據(jù)庫(kù)系統(tǒng)。簡(jiǎn)單地說(shuō),JDBC可做三件事:與數(shù)據(jù)庫(kù)建立連接、發(fā)送操作數(shù)據(jù)庫(kù)的語(yǔ)句并處理結(jié)果。三、JDBCAPIJDBC是個(gè)"低級(jí)"接口,也就是說(shuō),它用于直接調(diào)用SQL命令。在這方面它的功能極佳,并比其它的數(shù)據(jù)庫(kù)連接API易于使用,但它同時(shí)也被設(shè)計(jì)為一種基礎(chǔ)接口,在它之上可以建立高級(jí)接口和工具。高級(jí)接口是"對(duì)用戶友好的"接口,它使用的是一種更易理解和更為方便的API,這種API在幕后被轉(zhuǎn)換為諸如JDBC這樣的低級(jí)接口。在關(guān)系數(shù)據(jù)庫(kù)的"對(duì)象/關(guān)系"映射中,表中的每行對(duì)應(yīng)于類的一個(gè)實(shí)例,而每列的值對(duì)應(yīng)于該實(shí)例的一個(gè)屬性。于是,程序員可直接對(duì)Java對(duì)象進(jìn)行操作;存取數(shù)據(jù)所需的SQL調(diào)用將在"掩蓋下"自動(dòng)生成。此外還可提供更復(fù)雜的映射,例如將多個(gè)表中的行結(jié)合進(jìn)一個(gè)Java類中。隨著人們對(duì)JDBC的興趣日益增漲,越來(lái)越多的開(kāi)發(fā)人員一直在使用基于JDBC的工具,以使程序的編寫(xiě)更加容易。程序員也一直在編寫(xiě)力圖使最終用戶對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)變得更為簡(jiǎn)單的應(yīng)用程序。例如應(yīng)用程序可提供一個(gè)選擇數(shù)據(jù)庫(kù)任務(wù)的菜單。任務(wù)被選定后,應(yīng)用程序?qū)⒔o出提示及空白供填寫(xiě)執(zhí)行選定任務(wù)所需的信息。所需信息輸入應(yīng)用程序?qū)⒆詣?dòng)調(diào)用所需的SQL命令。在這樣一種程序的協(xié)助下,即使用戶根本不懂SQL的語(yǔ)法,也可以執(zhí)行數(shù)據(jù)庫(kù)任務(wù)。第二節(jié)MVC技術(shù)MVC三層架構(gòu)也稱MVC模式,主要是將程序開(kāi)發(fā)分為MODEL層〔數(shù)據(jù)持久層、VIEW〔界面表示層、CONTROL層〔控制層這三個(gè)層面,并將這三個(gè)層面分開(kāi)來(lái),形成了一個(gè)立體的架構(gòu)[7][9]。三個(gè)層次之間的主要交互如下所示:VIEW層VIEW層CONTROL層MODEL層MVC模式三層架構(gòu)圖一、MVC模型介紹MVC英文即Model-View-Controller,即把一個(gè)應(yīng)用的輸入、處理、輸出流程按照Model、View、Controller的方式進(jìn)行分離,這樣一個(gè)應(yīng)用被分成三個(gè)層——模型層、視圖層、控制層?!?視圖<View>代表用戶交互界面,對(duì)于Web應(yīng)用來(lái)說(shuō),可以概括為HTML界面,但有可能為XHTML、XML和Applet。隨著應(yīng)用的復(fù)雜性和規(guī)模性,界面的處理也變得具有挑戰(zhàn)性。一個(gè)應(yīng)用可能有很多不同的視圖,MVC設(shè)計(jì)模式對(duì)于視圖的處理僅限于視圖上數(shù)據(jù)的采集和處理,以及用戶的請(qǐng)求,而不包括在視圖上的業(yè)務(wù)流程的處理。業(yè)務(wù)流程的處理交予模型<Model>處理。比如一個(gè)訂單的視圖只接受來(lái)自模型的數(shù)據(jù)并顯示給用戶,以及將用戶界面的輸入數(shù)據(jù)和請(qǐng)求傳遞給控制和模型?!?模型<Model>:就是業(yè)務(wù)流程/狀態(tài)的處理以及業(yè)務(wù)規(guī)則的制定。業(yè)務(wù)流程的處理過(guò)程對(duì)其它層來(lái)說(shuō)是黑箱操作,模型接受視圖請(qǐng)求的數(shù)據(jù),并返回最終的處理結(jié)果。業(yè)務(wù)模型的設(shè)計(jì)可以說(shuō)是MVC最主要的核心。目前流行的EJB模型就是一個(gè)典型的應(yīng)用例子,它從應(yīng)用技術(shù)實(shí)現(xiàn)的角度對(duì)模型做了進(jìn)一步的劃分,以便充分利用現(xiàn)有的組件,但它不能作為應(yīng)用設(shè)計(jì)模型的框架。它僅僅告訴你按這種模型設(shè)計(jì)就可以利用某些技術(shù)組件,從而減少了技術(shù)上的困難。業(yè)務(wù)模型還有一個(gè)很重要的模型那就是數(shù)據(jù)模型。數(shù)據(jù)模型主要指實(shí)體對(duì)象的數(shù)據(jù)保存〔持續(xù)化。比如將一張訂單保存到數(shù)據(jù)庫(kù),從數(shù)據(jù)庫(kù)獲取訂單。我們可以將這個(gè)模型單獨(dú)列出,所有有關(guān)數(shù)據(jù)庫(kù)的操作只限制在該模型中。〔3控制<Controller>可以理解為從用戶接收請(qǐng)求,將模型與視圖匹配在一起,共同完成用戶的請(qǐng)求。劃分控制層的作用也很明顯,它清楚地告訴你,它就是一個(gè)分發(fā)器,選擇什么樣的模型,選擇什么樣的視圖,可以完成什么樣的用戶請(qǐng)求??刂茖硬⒉蛔鋈魏蔚臄?shù)據(jù)處理。例如,用戶點(diǎn)擊一個(gè)連接,控制層接受請(qǐng)求后,并不處理業(yè)務(wù)信息,它只把用戶的信息傳遞給模型,告訴模型做什么,選擇符合要求的視圖返回給用戶。因此,一個(gè)模型可能對(duì)應(yīng)多個(gè)視圖,一個(gè)視圖可能對(duì)應(yīng)多個(gè)模型[4][5][6]。二、MVC設(shè)計(jì)模式的實(shí)現(xiàn)〔1視圖是模型的表示,它提供用戶交互界面。使用多個(gè)包含單顯示頁(yè)面的用戶部件,復(fù)雜的Web頁(yè)面可以展示來(lái)自多個(gè)數(shù)據(jù)源的內(nèi)容,并且網(wǎng)頁(yè)人員,美工能獨(dú)自參與這些Web頁(yè)面的開(kāi)發(fā)和維護(hù)?!?為了能夠控制和協(xié)調(diào)每個(gè)用戶跨越多個(gè)請(qǐng)求的處理,控制機(jī)制應(yīng)該以集中的方式進(jìn)行管理。應(yīng)用程序的控制器集中從客戶端接收請(qǐng)求,決定執(zhí)行什么商業(yè)邏輯功能,然后將產(chǎn)生下一步用戶界面的責(zé)任委派給一個(gè)適當(dāng)?shù)囊晥D組件。用控制器提供一個(gè)控制和處理請(qǐng)求的集中入口點(diǎn),它負(fù)責(zé)接收、截取并處理用戶請(qǐng)求;并將請(qǐng)求委托給分發(fā)者類,根據(jù)當(dāng)前狀態(tài)和業(yè)務(wù)操作的結(jié)果決定向客戶呈現(xiàn)的視圖。〔3模型。MVC系統(tǒng)中的模型從概念上可以分為兩類――系統(tǒng)的內(nèi)部狀態(tài)和改變系統(tǒng)狀態(tài)的動(dòng)作。模型是你所有的商業(yè)邏輯代碼片段所在。業(yè)務(wù)處理對(duì)象封裝了具體的處理邏輯,調(diào)用業(yè)務(wù)邏輯模型,并且把響應(yīng)提交到合適的視圖組件以產(chǎn)生響應(yīng)。業(yè)務(wù)實(shí)體對(duì)象可以通過(guò)定義屬性描述客戶端表單數(shù)據(jù)。通過(guò)業(yè)務(wù)實(shí)體對(duì)象實(shí)現(xiàn)了對(duì)視圖和模型之間交互的支持。實(shí)現(xiàn)時(shí)把"做什么"〔業(yè)務(wù)處理和"如何做"〔業(yè)務(wù)實(shí)體分離。這樣可以實(shí)現(xiàn)業(yè)務(wù)邏輯的重用[7]。三、MVC設(shè)計(jì)模式的優(yōu)點(diǎn)首先,最重要的是應(yīng)該有多個(gè)視圖對(duì)應(yīng)一個(gè)模型的能力。在目前用戶需求的快速變化下,可能有多種方式訪問(wèn)應(yīng)用的要求。例如,訂單模型可能有本系統(tǒng)的訂單,也有網(wǎng)上訂單,或者其他系統(tǒng)的訂單,但對(duì)于訂單的處理都是一樣,也就是說(shuō)訂單的處理是一致的。按MVC設(shè)計(jì)模式,一個(gè)訂單模型以及多個(gè)視圖即可解決問(wèn)題。這樣減少了代碼的復(fù)制,即減少了代碼的維護(hù)量,一旦模型發(fā)生改變,也易于維護(hù)。其次,由于模型返回的數(shù)據(jù)不帶任何顯示格式,因而這些模型也可直接應(yīng)用于接口的使用。再次,由于一個(gè)應(yīng)用被分離為三層,因此有時(shí)改變其中的一層就能滿足應(yīng)用的改變。一個(gè)應(yīng)用的業(yè)務(wù)流程或者業(yè)務(wù)規(guī)則的改變只需改動(dòng)MVC的模型層??刂茖拥母拍钜埠苡行?由于它把不同的模型和不同的視圖組合在一起完成不同的請(qǐng)求,因此,控制層可以說(shuō)是包含了用戶請(qǐng)求權(quán)限的概念。最后,它還有利于軟件工程化管理。由于不同的層各司其職,每一層不同的應(yīng)用具有某些相同的特征,有利于通過(guò)工程化、工具化產(chǎn)生管理程序代碼。第三節(jié)SQL介紹一、SQL基礎(chǔ)SQL<StructuredQueryLanguage,結(jié)構(gòu)查詢語(yǔ)言>是一個(gè)功能強(qiáng)大的數(shù)據(jù)庫(kù)語(yǔ)言。SQL通常使用于數(shù)據(jù)庫(kù)的通訊。ANSI〔美國(guó)國(guó)家標(biāo)準(zhǔn)學(xué)會(huì)聲稱,SQL是關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)的標(biāo)準(zhǔn)語(yǔ)言。SQL語(yǔ)句通常用于完成一些數(shù)據(jù)庫(kù)的操作任務(wù),比如在數(shù)據(jù)庫(kù)中更新數(shù)據(jù),或者從數(shù)據(jù)庫(kù)中檢索數(shù)據(jù)。使用SQL的常見(jiàn)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)有:Oracle、Sybase、MicrosoftSQLServer、Access、MYSQL等等。雖然絕大多數(shù)的數(shù)據(jù)庫(kù)系統(tǒng)使用SQL,但是它們同樣有它們自立另外的專有擴(kuò)展功能用于它們的系統(tǒng)。但是,標(biāo)準(zhǔn)的SQL命令,比如"Select"、"Insert"、"Update"、"Delete"、"Create"和"Drop"常常被用于完成絕大多數(shù)數(shù)據(jù)庫(kù)的操作。MSSQLServer就是用的Transact-SQL。SQL語(yǔ)言有著非常突出的優(yōu)點(diǎn),主要是:◆非過(guò)程化語(yǔ)言◆統(tǒng)一的語(yǔ)言◆是所有關(guān)系數(shù)據(jù)庫(kù)的公共語(yǔ)言非過(guò)程化語(yǔ)言:SQL是一個(gè)非過(guò)程化的語(yǔ)言,因?yàn)樗淮翁幚硪粋€(gè)記錄,對(duì)數(shù)據(jù)提供自動(dòng)導(dǎo)航。SQL允許用戶在高層的數(shù)據(jù)結(jié)構(gòu)上工作,而不對(duì)單個(gè)記錄進(jìn)行操作,可操作記錄集,所有SQL語(yǔ)句接受集合作為輸入,返回集合作為輸出。SQL的集合特性允許一條SQL語(yǔ)句的結(jié)果作為另一條SQL語(yǔ)句的輸入。SQL不要求用戶指定對(duì)數(shù)據(jù)的存放方法,這種特性使用戶更易集中精力于要得到的結(jié)果;所有SQL語(yǔ)句使用查詢優(yōu)化器,它是RDBMS的一部分,由它決定對(duì)指定數(shù)據(jù)存取的最快速度的手段,查詢優(yōu)化器知道存在什么索引,在哪兒使用索引合適,而用戶則從不需要知道表是否有索引、有什么類型的索引。統(tǒng)一的語(yǔ)言:SQL可用于所有用戶的DB活動(dòng)模型,包括系統(tǒng)管理員、數(shù)據(jù)庫(kù)管理員、應(yīng)用程序員、決策支持系統(tǒng)人員及許多其它類型的終端用戶。SQL為許多任務(wù)提供了命令,其中包括:◆查詢數(shù)據(jù)◆在表中插入、修改和刪除記錄◆建立、修改和刪除數(shù)據(jù)對(duì)象◆控制對(duì)數(shù)據(jù)和數(shù)據(jù)對(duì)象的存取◆保證數(shù)據(jù)庫(kù)一致性和完整性以前的數(shù)據(jù)庫(kù)管理系統(tǒng)為上述各類操作提供單獨(dú)的語(yǔ)言,而SQL將全部任務(wù)統(tǒng)一在一種語(yǔ)言中。所有關(guān)系數(shù)據(jù)庫(kù)的公共語(yǔ)言:由于所有主要的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)都支持SQL語(yǔ)言,用戶可將使用SQL的技能從一個(gè)RDBMS<關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)>轉(zhuǎn)到另一個(gè),所有用SQL編寫(xiě)的程序都是可以移植的。二、SQL語(yǔ)句SQL功能強(qiáng)大,是一種完備的數(shù)據(jù)處理語(yǔ)言,不僅用于數(shù)據(jù)庫(kù)查詢,而且用于數(shù)據(jù)庫(kù)中的數(shù)據(jù)修改和更新,概括起來(lái),它可以分成以下幾組:DML〔DataManipulationLanguage,數(shù)據(jù)操作語(yǔ)言:用于檢索或者修改數(shù)據(jù);DDL〔DataDefinitionLanguage,數(shù)據(jù)定義語(yǔ)言:用于定義數(shù)據(jù)的結(jié)構(gòu),比如創(chuàng)建、修改或者刪除數(shù)據(jù)庫(kù)對(duì)象;DCL〔DataControlLanguage,數(shù)據(jù)控制語(yǔ)言:用于定義數(shù)據(jù)庫(kù)用戶的權(quán)限。DML組可以細(xì)分為以下的幾個(gè)語(yǔ)句:SELECT:用于檢索數(shù)據(jù);INSERT:用于增加數(shù)據(jù)到數(shù)據(jù)庫(kù);Insert標(biāo)準(zhǔn)語(yǔ)法:INSERTINTOtable_name<col1,col2...>VALUES<value1,value2...>UPDATE:用于從數(shù)據(jù)庫(kù)中修改現(xiàn)存的數(shù)據(jù);UPDATEtable_nameSETcolumnname1=value1[,columname2=value2]...DELETE:用于從數(shù)據(jù)庫(kù)中刪除數(shù)據(jù)。Delete語(yǔ)句標(biāo)準(zhǔn)語(yǔ)法:DELETEFROMtablenameWHEREconditionDDL語(yǔ)句可以用于創(chuàng)建用戶和重建數(shù)據(jù)庫(kù)對(duì)象。下面是DDL命令:CREATETABLE,ALTERTABLE,DROPTABLE,CREATEINDEX,DROPINDEX第四節(jié)開(kāi)發(fā)環(huán)境本系統(tǒng)是在Eclipse3.2環(huán)境中開(kāi)發(fā)的。第二章數(shù)據(jù)庫(kù)設(shè)計(jì)第一節(jié)數(shù)據(jù)系統(tǒng)分析圖書(shū)管理系統(tǒng)需要滿足來(lái)自兩個(gè)方面的需求,分別是圖書(shū)借閱者和圖書(shū)館管理人員。圖書(shū)借閱者的需求是查詢圖書(shū)館所存的圖書(shū)、個(gè)人借閱情況及個(gè)人信息的修改;圖書(shū)館管理人員對(duì)圖書(shū)借閱者的借閱及還書(shū)要求進(jìn)行操作,并及時(shí)督促未還的書(shū)籍歸還。

圖書(shū)借閱者根據(jù)本人注冊(cè)的用戶名和密碼登錄系統(tǒng),可以進(jìn)行本人借書(shū)情況的查詢和修改密碼等個(gè)人信息。一般情況下,圖書(shū)借閱者只應(yīng)該查詢和維護(hù)本人的借書(shū)情況和個(gè)人信息,若查詢和維護(hù)其他借閱者的借書(shū)情況和個(gè)人信息,就要知道其他圖書(shū)借閱者的用戶名和密碼。這些是很難得到的,特別是密碼,所以不但滿足了圖書(shū)借閱者的要求,還保護(hù)了圖書(shū)借閱者的個(gè)人隱私。為了實(shí)現(xiàn)系統(tǒng)的安全性、可靠性就必須對(duì)不同的用戶實(shí)現(xiàn)不同的功能,即實(shí)現(xiàn)用戶的權(quán)限問(wèn)題。對(duì)于圖書(shū)管理員需要管理各個(gè)方面,例如基本的對(duì)借閱者的借還書(shū)籍和用戶進(jìn)行管理,所以需要對(duì)管理員的模塊進(jìn)行更多的考慮。設(shè)計(jì)不同用戶的操作權(quán)限和登陸方法

對(duì)所有用戶開(kāi)放的圖書(shū)查詢

用戶可以修改自己的密碼

查看所有借閱情況信息和個(gè)人信息

根據(jù)借閱情況對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作并給予還書(shū)時(shí)間提示

根據(jù)還書(shū)情況對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作并顯示是否存在罰款實(shí)現(xiàn)對(duì)用戶的增添

處理信息的完整性一、系統(tǒng)用例圖圖3-1系統(tǒng)用例圖二、主要用例分析上圖3-1用例圖展現(xiàn)了整個(gè)系統(tǒng)的主要功能。整個(gè)系統(tǒng)的用戶分為圖書(shū)館的管理員<administrator>和讀者<guest>,兩者都能夠查看讀者的借書(shū)和是否欠費(fèi)的信息。同時(shí)都可以查詢、借閱、歸還書(shū)籍,他們都可以更改各自的密碼,但借閱者不能夠增添用戶,這個(gè)功能只能夠有管理員進(jìn)行,這便體現(xiàn)了用戶的權(quán)限問(wèn)題,提高了安全性,當(dāng)然在添加用戶時(shí)是可以選擇權(quán)限的。第二節(jié)數(shù)據(jù)庫(kù)系統(tǒng)一、數(shù)據(jù)庫(kù)采用access數(shù)據(jù)庫(kù)。二、數(shù)據(jù)采集數(shù)據(jù)采集采用鍵盤輸入。第三節(jié)數(shù)據(jù)處理流程一、主流程等待管理員輸入。如為圖書(shū)管理操作:進(jìn)入圖書(shū)管理操作流程。如為借書(shū):進(jìn)入借書(shū)流程〔顯示借書(shū)對(duì)話框。如為還書(shū):進(jìn)入還書(shū)流程〔顯示還書(shū)對(duì)話框。如為查詢:進(jìn)入查詢流程〔顯示續(xù)借對(duì)話框。如為退出:檢查所有子窗口,關(guān)閉對(duì)話框,斷開(kāi)與數(shù)據(jù)庫(kù)的連接,結(jié)束主流程。二、借書(shū)流程1、要求管理員輸入書(shū)編號(hào),借閱證號(hào)。2、檢驗(yàn)書(shū)編號(hào)和借閱證是否存在。3、確認(rèn)存在后提交借書(shū)請(qǐng)求,更新信息,把借書(shū)信息〔如時(shí)間寫(xiě)入數(shù)據(jù)庫(kù),顯示借書(shū)操作結(jié)果。4、如為完成借書(shū)操作:結(jié)束借書(shū)流程。三、還書(shū)流程1、要求管理員輸入書(shū)編號(hào)和卡號(hào)。2、檢驗(yàn)借書(shū)信息是否存在。3、確認(rèn)存在后提交還書(shū)請(qǐng)求,更新信息,把還書(shū)信息寫(xiě)入數(shù)據(jù)庫(kù),顯示還書(shū)操作結(jié)果。4、如為完成還書(shū)操作:結(jié)束還書(shū)流程。四、圖書(shū)管理操作流程1、管理員可以對(duì)圖書(shū)信息進(jìn)行增刪改查操作。2、確認(rèn)提交后,更新信息,寫(xiě)入數(shù)據(jù)庫(kù),顯示操作結(jié)果。3、完成操作后,結(jié)束圖書(shū)管理操作流程。第四節(jié)E-R圖useruserpassworduserpopedom圖5-1-1表userinformationinformation借書(shū)證號(hào)年級(jí)學(xué)號(hào)姓名性別系別班級(jí)圖5-1-2表informationE-R圖borrowborrow借書(shū)證號(hào)所借書(shū)名拖欠天數(shù)罰款數(shù)目年月日?qǐng)D5-1-3表borrowE-R圖booksbooks書(shū)名作者價(jià)格出版時(shí)間ISDN出版社圖5-1-4表booksE-R圖第五節(jié)數(shù)據(jù)表結(jié)構(gòu)一、user數(shù)據(jù)表結(jié)構(gòu)表5-1user表結(jié)構(gòu)編號(hào)字段名字段類型字段寬度字約束說(shuō)明1User文本72password文本203popedom文本20二、information數(shù)據(jù)表結(jié)構(gòu)表5-2information表結(jié)構(gòu)編號(hào)字段名字段類型字段寬度字約束說(shuō)明1借書(shū)證號(hào)文本152年級(jí)文本103學(xué)號(hào)數(shù)字長(zhǎng)整型4姓名文本105性別文本46系別文本207班級(jí)文本10三、borrow數(shù)據(jù)表結(jié)構(gòu)表5-3borrow表結(jié)構(gòu)編號(hào)字段名字段類型字段寬度字約束說(shuō)明1借書(shū)證號(hào)文本152所借書(shū)名文本153拖欠天數(shù)數(shù)字整型4罰款數(shù)目數(shù)字單精度小數(shù)2位5年文本56月文本27日文本2四、books數(shù)據(jù)表結(jié)構(gòu)表5-4books表結(jié)構(gòu)編號(hào)字段名字段類型字段寬度字約束說(shuō)明1書(shū)名文本302作者文本103價(jià)格數(shù)字整型格式為貨幣4出版時(shí)間時(shí)間/日期5ISDN文本206出版社文本30第3章系統(tǒng)實(shí)現(xiàn)第一節(jié)系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)軟件總體結(jié)構(gòu):系統(tǒng)登陸系統(tǒng)登陸還書(shū)信息還書(shū)信息數(shù)據(jù)庫(kù)連接數(shù)據(jù)庫(kù)連接還書(shū)圖書(shū)管理還書(shū)圖書(shū)管理借書(shū)借書(shū)主界面主界面借書(shū)信息系統(tǒng)管理借書(shū)信息系統(tǒng)管理幫助退出系統(tǒng)添加用戶修改密碼幫助退出系統(tǒng)添加用戶修改密碼第二節(jié)系統(tǒng)模塊實(shí)現(xiàn)一、系統(tǒng)登錄模塊實(shí)現(xiàn)功能檢驗(yàn)輸入的管理員賬號(hào)以及密碼是否正確。輸入項(xiàng)目管理員用戶名和密碼。輸出項(xiàng)目主界面程序邏輯輸入管理員用戶名和密碼輸入管理員用戶名和密碼密碼正確密碼正確密碼錯(cuò)誤系統(tǒng)登陸界面密碼錯(cuò)誤系統(tǒng)登陸界面進(jìn)入主界面進(jìn)入主界面錯(cuò)誤信息錯(cuò)誤信息二、系統(tǒng)管理模塊實(shí)現(xiàn)功能建立與數(shù)據(jù)庫(kù)連接運(yùn)行主界面根據(jù)輸入調(diào)用子模塊退出系統(tǒng)時(shí)斷開(kāi)與數(shù)據(jù)庫(kù)的連接輸入項(xiàng)目用戶鼠標(biāo)點(diǎn)擊工具欄各個(gè)按鈕程序邏輯圖書(shū)查詢界面初始化圖書(shū)查詢界面初始化讀者查詢界面主界面讀者查詢界面主界面連接數(shù)據(jù)庫(kù)連接數(shù)據(jù)庫(kù)還書(shū)界面還書(shū)界面按鍵選擇,是否退出按鍵選擇,是否退出根據(jù)所選功能根據(jù)所選功能圖書(shū)管理界面框否圖書(shū)管理界面框否借書(shū)界面退出主界面是借書(shū)界面退出主界面是幫助界面幫助界面三、借書(shū)模塊實(shí)現(xiàn)功能查驗(yàn)輸入的借閱證號(hào)查驗(yàn)輸入的圖書(shū)編號(hào)運(yùn)行借書(shū)界面獲取該師生以及圖書(shū)的相關(guān)信息登記借書(shū)輸入項(xiàng)目借閱證號(hào)、圖書(shū)編號(hào)<管理員輸入>輸出項(xiàng)目借書(shū)成功對(duì)話框程序邏輯輸入書(shū)編號(hào)和借閱卡號(hào)號(hào)借書(shū)界面輸入書(shū)編號(hào)和借閱卡號(hào)號(hào)借書(shū)界面正確檢驗(yàn)正確檢驗(yàn)登記借書(shū)信息記錄登記借書(shū)信息記錄錯(cuò)誤錯(cuò)誤借書(shū)成功對(duì)話框借書(shū)成功對(duì)話框退出退出四、還書(shū)模塊實(shí)現(xiàn)功能查驗(yàn)輸入的借閱證號(hào)查驗(yàn)輸入的圖書(shū)編號(hào)運(yùn)行還書(shū)界面獲取該會(huì)員以及圖書(shū)的相關(guān)信息登記還書(shū)輸入項(xiàng)目借閱證號(hào)、圖書(shū)編號(hào)<管理員輸入>輸出項(xiàng)目還書(shū)成功對(duì)話框程序邏輯輸入書(shū)編號(hào)和借閱卡號(hào)號(hào)還書(shū)界面輸入書(shū)編號(hào)和借閱卡號(hào)號(hào)還書(shū)界面正確檢驗(yàn)正確檢驗(yàn)登記還書(shū)信息記錄登記還書(shū)信息記錄錯(cuò)誤錯(cuò)誤還書(shū)成功對(duì)話框還書(shū)成功對(duì)話框退出退出第4章系統(tǒng)代碼設(shè)計(jì)及時(shí)序圖本系統(tǒng)的設(shè)計(jì)分為DateBaseConnection,HD,LandPrograme,Menus四個(gè)包,其中第一個(gè)包中有BLend,Dataconnection,DataSrc,SearchBInformation,ShiJian五個(gè)類,這幾個(gè)類都是要與數(shù)據(jù)庫(kù)有或多或少的接觸的。第二個(gè)包中有HuanD類,該類是用于實(shí)現(xiàn)滑動(dòng)窗口的彈出的。第三個(gè)包中有AddUser,ChangeUser,Land,Password四個(gè)類,這四個(gè)類是用于實(shí)現(xiàn)對(duì)用戶密碼等方面的維護(hù)的,其中Land的是該程序的主類。第四個(gè)包中有MainMenu類,由名字可猜想到該類主要是建立系統(tǒng)的主界面。本系統(tǒng)中各個(gè)類之間主要都是一中依賴關(guān)系。第一節(jié)系統(tǒng)類圖圖4-1系統(tǒng)類圖第二節(jié)主要時(shí)序圖圖4-2-1用戶登陸時(shí)序類圖圖4-2-2用戶的添加和修改時(shí)序類圖圖4-2-3圖書(shū)的借閱時(shí)序類圖第五章編碼實(shí)現(xiàn)與測(cè)試第一節(jié)類一、AddUser類圖4-3AddUser類圖AddUser中的變量如圖所示主要是位置構(gòu)造圖形界面。構(gòu)造方法中主要是實(shí)現(xiàn)對(duì)用戶名的添加,將必要的信息存入數(shù)據(jù)庫(kù)中。另一add方法用來(lái)創(chuàng)建該類的實(shí)例啟動(dòng)圖形界面。二、Password類圖4-4Password類圖Password類中的fangfa方法主要用于判斷用戶輸入的密碼是否和數(shù)據(jù)庫(kù)中的相符即用戶密碼是否正確,同時(shí)獲得用戶的權(quán)限信息。三、ChangeUser類圖4-5ChangeUser類圖ChangeUser類主要是用于對(duì)用戶密碼的更改,并將更改的信息存入數(shù)據(jù)庫(kù)中。四、Land類圖4-6Land類圖Land類是整個(gè)程序的主類,擁有主方法用以啟動(dòng)程序。類的構(gòu)造方法主要實(shí)現(xiàn)登陸界面和調(diào)用相關(guān)的各種方法。五、MainMenu類圖4-7MainMenu類圖MainMenu類中creatMenu方法用于創(chuàng)建整個(gè)圖形界面,actionPerformed方法對(duì)各個(gè)事件的處理,fangfa作為該類與其他類的連接和創(chuàng)建該類的實(shí)例。六、HuanD類圖4-8HuanD類圖HuanD類中的HD方法中是從桌面右下角劃出一個(gè)提示窗口的方法,其中用以顯示還書(shū)時(shí)間和是否存在罰款的情況。七、ShiJian類圖4-9ShiJian類圖ShiJian類中主要變量year1,month1,day1,year2,month2,day2,year3,month3,day3,day,其中有對(duì)一些變量的訪問(wèn)器和修改器如上圖。其中的time方法用于計(jì)算兩個(gè)時(shí)間段的時(shí)間差,用于計(jì)算借書(shū)與還書(shū)的時(shí)間差用以判斷所借書(shū)籍是否過(guò)期。aftertime用于計(jì)算day天后的日期,在程序中用于計(jì)算還書(shū)的日期。八、SearchBInformation類圖4-10SearchBInformation類圖SearchBInformation類中的構(gòu)造方法通過(guò)對(duì)數(shù)據(jù)庫(kù)的連接,以便實(shí)現(xiàn)對(duì)書(shū)庫(kù)中書(shū)目的查詢。Cha方法調(diào)用構(gòu)造方法。九、Blend類圖4-11Blend類圖Blend類中的構(gòu)造方法用于連接數(shù)據(jù)庫(kù)實(shí)現(xiàn)對(duì)書(shū)庫(kù)中的圖書(shū)的借閱與歸還,而名為addLabe的兩中方法用于對(duì)圖形界面的構(gòu)件中對(duì)標(biāo)簽的實(shí)例化,參數(shù)不同是因?yàn)橛玫牟季止芾砥鞑煌pdate方法調(diào)用構(gòu)造方法啟動(dòng)界面的作用。十、Dataconnection類4-12Dataconnection類圖Dataconnection類中的構(gòu)造方法通過(guò)獲取數(shù)據(jù)庫(kù)中的讀者信息實(shí)現(xiàn)查看。4.2.4-13DtaSrc類圖該類中就只有一個(gè)connection方法里面是用于實(shí)現(xiàn)連接數(shù)據(jù)的。第二節(jié)用戶手冊(cè)編寫(xiě)本手冊(cè)的目的在于使用戶能夠?qū)W會(huì)使用本系統(tǒng)一、軟件概述本系統(tǒng)應(yīng)該完成一個(gè)中小型書(shū)社的所有功能,包括以下內(nèi)容:〔1圖書(shū)信息管理此操作由管理員完成,單擊主窗體上的"圖書(shū)管理"按鈕,進(jìn)入對(duì)圖書(shū)信息的操作,可以多種條件查詢、修改圖書(shū)信息。〔2讀者信息管理此操作由管理員完成,單擊主窗體上的"會(huì)員管理"按鈕,進(jìn)入會(huì)員信息操作,可以修改、刪除、多種條件查詢會(huì)員信息,當(dāng)會(huì)員鎖定時(shí)為會(huì)員解鎖。〔3讀者借書(shū)此操作由管理員完成,單擊主窗體上的"借書(shū)"按鈕進(jìn)入借書(shū)操作,完成借書(shū)功能,并把借書(shū)信息登記入庫(kù)。〔4讀者還書(shū)此操作由管理員完成,單擊主窗體上的"還書(shū)"按鈕進(jìn)入此還書(shū)操作,完成還書(shū)功能,并把還書(shū)信息登記入庫(kù)。〔5添加圖書(shū)此操作由管理員完成,單擊主窗體上的"基本操作"菜單選項(xiàng)選擇"新書(shū)上架"進(jìn)入添加圖書(shū)操作,完成添加圖書(shū)功能,并把圖書(shū)信息登記入庫(kù)?!?借書(shū)信息查詢此操作由管理員完成,單擊主窗體上的"借書(shū)查詢"按鈕進(jìn)入借書(shū)信息查詢操作,查詢所有的借書(shū)信息。〔7還書(shū)信息查詢此操作由管理員完成,單擊主窗體上的"還書(shū)查詢"按鈕進(jìn)入還書(shū)信息查詢操作,查詢所有的還書(shū)信息。二、運(yùn)行環(huán)境要求1、硬件CPU:PII以上,內(nèi)存:128M以上所需硬盤空間:≤5MB;2、軟件操作系統(tǒng):Windows2000/XP及其以上版本,JVM〔JAVA虛擬機(jī);數(shù)據(jù)庫(kù):采用access。第三節(jié)系統(tǒng)安裝與運(yùn)行一、安裝在自己計(jì)算機(jī)上運(yùn)行該系統(tǒng)setup.exe文件即可把該系統(tǒng)安裝在用戶的計(jì)算機(jī)上。二、運(yùn)行在該系統(tǒng)安裝的文件夾找到run.exe文件雙擊就可以運(yùn)行該系統(tǒng)。操作步驟:雙擊run.exe,在彈出的"系統(tǒng)登陸界面中輸入正確的管理員用戶名和密碼后〔默認(rèn)情況下管理員用戶名:張強(qiáng),密碼:123456,即可進(jìn)入主窗體界面,然后進(jìn)行各項(xiàng)操作。1、系統(tǒng)登陸用例運(yùn)行效果圖6-1系統(tǒng)登陸用例運(yùn)行效果圖說(shuō)明:用戶登陸出現(xiàn)密碼或用戶名錯(cuò)誤最多只能三次,三次之后本次登陸將結(jié)束。登陸后系統(tǒng)將自動(dòng)辨別登陸用戶的權(quán)限,并實(shí)現(xiàn)與權(quán)限相對(duì)應(yīng)的功能。2、整個(gè)系統(tǒng)界面用例運(yùn)行效果圖6-2整個(gè)系統(tǒng)界面用例運(yùn)行效果圖說(shuō)明:該界面的菜單欄有四個(gè)菜單讀者管理,借閱管理,系統(tǒng)維護(hù),幫助,并且菜單可以通過(guò)快捷鍵實(shí)現(xiàn)。3、顯示讀者信息用例運(yùn)行效果圖圖6-3顯示讀者信息用例運(yùn)行效果圖說(shuō)明:該顯示的內(nèi)容為表information和表borrow兩者部分內(nèi)容的結(jié)合。4、圖書(shū)查詢用例運(yùn)行效果圖圖6-4圖書(shū)查詢用例運(yùn)行效果圖說(shuō)明:輸入書(shū)名將會(huì)變?yōu)樯蠄D,查詢出書(shū)庫(kù)中的書(shū)籍。如果沒(méi)有該書(shū)籍將彈出"暫無(wú)此書(shū)"的提示對(duì)話框。5、圖書(shū)借閱用例運(yùn)行效果圖圖6-5圖書(shū)借閱用例運(yùn)行效果圖說(shuō)明:如圖輸入節(jié)書(shū)證號(hào),書(shū)名,選擇好時(shí)期,便能成功借閱書(shū)籍。同時(shí)在右下角將有滑動(dòng)窗口出來(lái)提示您還書(shū)的時(shí)間。6、還書(shū)用例運(yùn)行效果圖圖6-6還書(shū)用例運(yùn)行效果圖說(shuō)明:和借閱在同一界面,當(dāng)輸入借書(shū)證號(hào)還書(shū)日期便可成功還書(shū),同時(shí)在滑動(dòng)窗口中會(huì)根據(jù)你借還書(shū)的時(shí)間判斷你是否過(guò)期,如有提示你被罰的數(shù)目和拖欠的天數(shù)。第6章畢業(yè)設(shè)計(jì)總結(jié)此圖書(shū)管理系統(tǒng)歷時(shí)一個(gè)月終于完成了。完成了讀書(shū)管理的基本功能。如讀書(shū)查詢,讀者管理,讀書(shū)計(jì)時(shí),還書(shū)等功能。系統(tǒng)的特點(diǎn):1、本系統(tǒng)為中文界面,易操作,價(jià)格合理??伸`活管理圖書(shū)信息。2、系統(tǒng)具有強(qiáng)大的工作權(quán)限、管理員權(quán)限、密碼管理,確保系統(tǒng)的運(yùn)行安全。3、查詢和記錄書(shū)籍借閱時(shí)間。4、系統(tǒng)提示借閱超時(shí)功能。5、速度快。6、操作簡(jiǎn)單,易掌握。通過(guò)這次畢業(yè)設(shè)計(jì),使我更大程度上了解了管理信息系統(tǒng)的功能,提高了實(shí)踐能力。是對(duì)所學(xué)知識(shí)的一次綜合應(yīng)用,系統(tǒng)還有以下部分有待完善:〔1數(shù)據(jù)庫(kù)安全性還有待加強(qiáng)?!?識(shí)別借閱卡應(yīng)考慮用電子設(shè)備?!?圖書(shū)管理還可以添加一些期刊,雜志的管理。使書(shū)社管理工作更全面化,科學(xué)化。系統(tǒng)還應(yīng)考慮一些實(shí)際情況,對(duì)一些損壞的圖書(shū)的處理功能,淘汰書(shū)目等。對(duì)特定讀者的約束還應(yīng)加強(qiáng)其嚴(yán)密性。通過(guò)這次的畢業(yè)設(shè)計(jì),我學(xué)到了很多的東西,不僅使我的知識(shí)面有所擴(kuò)充,對(duì)于書(shū)社業(yè)務(wù)流程也熟悉了,而且也很好的應(yīng)用了系統(tǒng)設(shè)計(jì)相關(guān)的軟件。在實(shí)踐中能夠及時(shí)的發(fā)現(xiàn)問(wèn)題、解決問(wèn)題。同時(shí)也閱讀了大量相關(guān)書(shū)籍,提高了動(dòng)手制作能力,也提高了團(tuán)隊(duì)協(xié)作的效率,為以后的工作打下了很好的基礎(chǔ)。結(jié)論經(jīng)過(guò)這次課題的設(shè)計(jì)并實(shí)現(xiàn),盡管會(huì)遇到很多難題,但是讓我更加受益的是在這次課題中得到的經(jīng)驗(yàn)、心得和鍛煉。我發(fā)現(xiàn)開(kāi)發(fā)項(xiàng)目的過(guò)程其實(shí)就是個(gè)不斷的解決問(wèn)題的過(guò)程,從中也感覺(jué)到項(xiàng)目開(kāi)發(fā)的快樂(lè),一個(gè)人永遠(yuǎn)有學(xué)不玩的知識(shí),就算是項(xiàng)目開(kāi)發(fā)中的知識(shí)點(diǎn)都學(xué)了,但在實(shí)際的開(kāi)發(fā)過(guò)程中仍然會(huì)遇到不少問(wèn)題,遇到問(wèn)題時(shí)要做到兩點(diǎn):一個(gè)是"查",一個(gè)是"問(wèn)"。不懂的地方就得要自己找答案,可以從書(shū)本、網(wǎng)絡(luò)中查找解決的答案;再一個(gè)就是問(wèn)周邊的同學(xué)。比如,在本科課題的編寫(xiě)代碼部分,本人就參考了《java核心技術(shù)》,從中得到了圖形編程的很多有用的方法。這次課程的設(shè)計(jì)給我以前所學(xué)的知識(shí)做了一個(gè)總結(jié),為我深入學(xué)習(xí)編程做了鋪墊。在本課題中存在的不足之處是在所難免的,本人將在日后加于改進(jìn)。參考文獻(xiàn)求是科技.Java信息管理系統(tǒng)開(kāi)發(fā)實(shí)例導(dǎo)航[M].北京:人民郵電出版社,2005,4.求是科技.Java數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)實(shí)例導(dǎo)航[M].北京:人民郵電出版社,2004,9.Java程序設(shè)計(jì)導(dǎo)論<Java經(jīng)典教材譯叢>德克爾董青霞Java編程思想〔第4版<機(jī)械工業(yè)出版社>彭晨陽(yáng).Java實(shí)用系統(tǒng)開(kāi)發(fā)指南[M].北京:機(jī)械工業(yè)出版社,2004.1.徐曄.SWINGHACKS[M].北京:清華大學(xué)出版社,2007,2.郭廣軍,劉安豐,陽(yáng)西述.Java程序設(shè)計(jì)教程[M].XX:XX大學(xué)出版社,2008,7.附錄:系統(tǒng)源程序一、Land類功能:Land為該系統(tǒng)的主類,創(chuàng)建了登陸窗口,調(diào)用相關(guān)的方法。代碼:packageLandProgram;importLandProgram.Password; importjava.awt.Container;importjava.awt.event.*;importjavax.swing.*;importMenus.MainMenu; publicclassLandextendsJFrame{ JTextFieldtext1; JPasswordFieldpassword; JButtonbutton1,button2; ActionListenercommand; publicStringpopedom=null; JLabellabe1,labe2,labe3; intn=0;intb=0; publicLand<>{ super<"圖書(shū)館系統(tǒng)登陸">; JPanelpane=newJPanel<>; Containerc=getContentPane<>; labe1=newJLabel<"用戶名:">; text1=newJTextField<15>; labe2=newJLabel<"密碼:">; password=newJPasswordField<15>; password.setEchoChar<'*'>;//返回字符 pane.add<labe1>; pane.add<text1>; pane.add<labe2>; pane.add<password>; button1=newJButton<"確定">; button2=newJButton<"退出">; pane.add<button1>; pane.add<button2>; c.add<pane>; command=newActionListener<>{ publicvoidactionPerformed<ActionEventevent>{ Stringac=event.getActionCommand<>; if<ac.equals<"確定">> {Passwordf=newPassword<>; Stringk=text1.getText<>; char[]m=password.getPassword<>;Stringc=newString<m>; b=f.fangfa<k,c>; if<b==1||b==2>{ JOptionPane.showMessageDialog<null,"恭喜登陸成功!","系統(tǒng)提示",JOptionPane.INFORMATION_MESSAGE>; newMainMenu<>.fangfa<b>;setVisible<false>;}//彈出系統(tǒng)后登陸框隱藏 elseif<b==0> {if<n<2> {JOptionPane.showMessageDialog<null,"用戶名或密碼不正確!","系統(tǒng)提示",JOptionPane.WARNING_MESSAGE>; n++; text1.setText<"">;password.setText<"">;text1.grabFocus<>;}//清空?。raFocus將光標(biāo)移到text1. else {JOptionPane.showMessageDialog<null,"錯(cuò)誤三次,請(qǐng)下次登陸!","系統(tǒng)提示",JOptionPane.WARNING_MESSAGE>; text1.setEditable<false>; password.setEditable<false>;} } } elseSystem.exit<1>; } }; button1.addActionListener<command>; button2.addActionListener<command>; } publicstaticvoidmain<String[]args>{ Landframe=newLand<>; frame.setBounds<400,350,250,150>; frame.setVisible<true>; } }二、MainMenu類功能:主界面窗口的創(chuàng)建。代碼:packageMenus;importLandProgram.Land;importjava.awt.event.*;importjavax.swing.*;importLandProgram.*;importDataBaseConnection.*;publicclassMainMenuextendsJFrameimplementsActionListener{ JMenuBarmenubar; JMenumenu,submenu; JMenuItemmenuite; MainMenuframe; publicintc=1; publicMainMenu<>{} publicMainMenu<intc>{ super<"圖書(shū)管理系統(tǒng)">; this.c=c; creatMenu<>; } voidcreatMenu<>{ menubar=newJMenuBar<>; setJMenuBar<menubar>;//菜單欄加入容器 menu=newJMenu<"讀者管理D">; menu.setMnemonic<KeyEvent.VK_D>; menubar.add<menu>; menuite=newJMenuItem<"顯示讀者信息">; menuite.setAccelerator<KeyStroke.getKeyStroke<KeyEvent.VK_0,ActionEvent.ALT_MASK>>; menu.add<menuite>; menuite.addActionListener<this>; /*menu=newJMenu<"新書(shū)定購(gòu)X">; menu.setMnemonic<KeyEvent.VK_X>; menubar.add<menu>; menuite=newJMenuItem<"新書(shū)信息管理">; menu.add<menuite>;*/ menu=newJMenu<"借閱管理J">; menu.setMnemonic<KeyEvent.VK_J>; menubar.add<menu>; menuite=newJMenuItem<"查詢書(shū)籍">; menu.add<menuite>; menuite.addActionListener<this>; menuite=newJMenuItem<"借還書(shū)籍">; menu.add<menuite>; menuite.addActionListener<this>; menu=newJMenu<"系統(tǒng)維護(hù)T">; menu.setMnemonic<KeyEvent.VK_T>; menubar.add<menu>; submenu=newJMenu<"用戶管理Y">; submenu.setMnemonic<KeyEvent.VK_Y>; menuite=newJMenuItem<"添加用戶">; submenu.add<menuite>; menuite.addActionListener<this>; menuite=newJMenuItem<"修改密碼">; submenu.add<menuite>; menuite.addActionListener<this>; menu.add<submenu>;//放在子菜單之后 menu=newJMenu<"幫助B">; menu.setMnemonic<KeyEvent.VK_B>; menubar.add<menu>; menuite=newJMenuItem<"退出系統(tǒng)">; menu.add<menuite>; menuite.addActionListener<newActionListener<>{ publicvoidactionPerformed<ActionEvente>{ System.exit<0>; } }>; } publicvoidactionPerformed<ActionEvente>{ Stringm=e.getActionCommand<>; if<m.equals<"添加用戶">> {if<c==2> {newAddUser<>.add<>;} elseJOptionPane.showMessageDialog<null,"對(duì)不起!只有管理員可使用!","系統(tǒng)提示",JOptionPane.WARNING_MESSAGE>; } elseif<m.equals<"修改密碼">> newChangeUser<>.changepassword<>; elseif<m.equals<"顯示讀者信息">> newDataconnection<>; elseif<m.equals<"查詢書(shū)籍">> newSearchBInformation<>.cha<>; elseif<m.equals<"借還書(shū)籍">> newBLend<>.update<>; } publicvoidfangfa<inta>{ MainMenuframe=newMainMenu<a>; frame.setSize<1300,800>; JLabellabe=newJLabel<newImageIcon<"image/librarymanage.jpg">>; frame.add<labe>; frame.setVisible<true>; }}三、Password類功能:對(duì)用戶輸入的用戶名和密碼同數(shù)據(jù)庫(kù)中的內(nèi)容相比較,以便判斷登陸能否成功。另一方面確定登陸的用戶的權(quán)限。代碼:packageLandProgram;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;importDataBaseConnection.DataSrc;publicclassPassword{publicstaticStringname;publicStringpassword; inta=0; publicintfangfa<Stringname,Stringpassword>{//Password<>{ StringconURL=newDataSrc<>.connection<>; try{ Connectioncon=DriverManager.getConnection<conURL>; Statementstm=con.createStatement<>; ResultSetrest=stm.executeQuery<"Select*fromuser">; while<rest.next<>>{ if<name.equals<rest.getString<"user">>> {if<password.equals<rest.getString<"password">>> { if<rest.getString<"popedom">.equals<"adminitrator">> {a=2;break;} else {a=1;break;} }} } stm.close<>; con.close<>; }catch<SQLExceptione>{ System.out.println<"=SQLException:"+e.getMessage<>>; } returna;} }四、Dataconnection類功能:調(diào)出數(shù)據(jù)庫(kù)中的讀者信息將其顯示出來(lái)。代碼:packageDataBaseConnection;importjava.awt.*;importjava.sql.*;importjavax.swing.*;publicclassDataconnection{JLabellabe; publicDataconnection<>{ StringconURL=newDataSrc<>.connection<>; try{ Connectioncon=DriverManager.getConnection<conURL>; Statementstm=con.createStatement<>; ResultSetrest=stm.executeQuery<"selectinformation.借書(shū)證號(hào),年級(jí),學(xué)號(hào),姓名,性別,系別,班級(jí),拖欠天數(shù),罰款數(shù)目frominformation,borrowwhereinformation.借書(shū)證號(hào)=borrow.借書(shū)證號(hào)">; JFrameframe=newJFrame<"讀者信息">; frame.setBounds<300,200,480,200>; frame.setResizable<false>; frame.setVisible<true>; frame.setLayout<newFlowLayout<>>; labe=newJLabel<"借書(shū)證號(hào)年級(jí)學(xué)號(hào)姓名性別系別班級(jí)拖

溫馨提示

  • 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)論