優(yōu)秀畢業(yè)設(shè)計(jì)論文+源碼基于Java的圖書館管理系統(tǒng)畢業(yè)設(shè)計(jì)(論文)
《優(yōu)秀畢業(yè)設(shè)計(jì)論文+源碼基于Java的圖書館管理系統(tǒng)畢業(yè)設(shè)計(jì)(論文)》由會(huì)員分享,可在線閱讀,更多相關(guān)《優(yōu)秀畢業(yè)設(shè)計(jì)論文+源碼基于Java的圖書館管理系統(tǒng)畢業(yè)設(shè)計(jì)(論文)(64頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、推薦精選圖書管理系統(tǒng)畢業(yè)論文目 錄摘 要 .IIIABSTRACT .IV1. 緒 論 .11.1 畢業(yè)設(shè)計(jì)主要任務(wù) .11.2 目前圖書管理系統(tǒng)存在的問題 .11.3 課題意義 .11.4 論文的工作和安排 .22.圖書借閱管理需求分析 .32.1 可行性分析.32.1.1.技術(shù)可行性 .32.1.2.經(jīng)濟(jì)可行性 .32.2 圖書借閱管理系統(tǒng)需求概述.32.2.1 系統(tǒng)目標(biāo) .32.2.2 用戶類和用戶特性 .42.3 圖書借閱管理系統(tǒng)需求模型.42.3.1 功能描述 .42.3.2 圖書管理員詳細(xì)功能描述 .52.3.3 讀者詳細(xì)功能描述 .52.3.4 主要用例的用例描述 .63.總體設(shè)
2、計(jì) .93.1 數(shù)據(jù)庫設(shè)計(jì).93.1.1 數(shù)據(jù)庫設(shè)計(jì)概述 .93.1.2 圖書信息表結(jié)構(gòu)設(shè)計(jì) .103.1.3 圖書類型信息表結(jié)構(gòu)設(shè)計(jì) .113.1.4 讀者信息表結(jié)構(gòu)設(shè)計(jì) .113.1.5 讀者類型信息表結(jié)構(gòu)設(shè)計(jì) .123.1.6 圖書借閱信息表結(jié)構(gòu)設(shè)計(jì) .123.1.7 圖書歸還信息表結(jié)構(gòu)設(shè)計(jì) .133.1.8 用戶信息表結(jié)構(gòu)設(shè)計(jì) .13推薦精選3.1.9 圖書館信息表結(jié)構(gòu)設(shè)計(jì) .143.1.10 辦證參數(shù)信息表結(jié)構(gòu)設(shè)計(jì) .143.2 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì).153.2.1 圖書管理系統(tǒng)總體結(jié)構(gòu)圖 .153.2.2 系統(tǒng)管理員模塊功能 .153.2.3 讀者管理模塊功能 .163.2.4 圖書管
3、理模塊功能 .163.2.5 圖書借還模塊功能 .173.2.6 系統(tǒng)查詢模塊功能 .184.程序設(shè)計(jì)與編碼 .204.1 開發(fā)平臺(tái)與工具 .204.1.1 J2EE 平臺(tái) .204.1.2 WEB 服務(wù)器和數(shù)據(jù)庫 .204.2 程序設(shè)計(jì) .214.2.1 程序設(shè)計(jì)概述 .214.2.2 數(shù)據(jù)庫與 Web 服務(wù)器的連接 .214.2.3 登錄模塊程序設(shè)計(jì) .234.2.4 系統(tǒng)管理員功能模塊的實(shí)現(xiàn) .254.2.5 讀者管理功能模塊的實(shí)現(xiàn) .264.2.6 查詢功能模塊的實(shí)現(xiàn) .274.2.7 圖書管理功能模塊的實(shí)現(xiàn) .294.2.8 圖書借還功能模塊的實(shí)現(xiàn) .305.軟件測試 .335.1
4、軟件測試的方法與步驟.335.2 測試用例設(shè)計(jì)與測試用例的運(yùn)行過程及測試結(jié)果分析.345.2.1 模塊測試 .345.2.2 集成測試 .355.2.3 驗(yàn)收測試 .365.3 評價(jià).366.結(jié)束語 .376.1 工作成果.376.2 改進(jìn)意見.376.3 收獲體會(huì).37參考文獻(xiàn) .39致 謝 .40推薦精選摘 要隨著科學(xué)技術(shù)的進(jìn)步,計(jì)算機(jī)行業(yè)的迅速發(fā)展,大大提高人們的工作效率。計(jì)算機(jī)信息處理系統(tǒng)的引進(jìn)已徹底改變了許多系統(tǒng)的經(jīng)營管理 。圖書管理系統(tǒng)是學(xué)校管理機(jī)制中的重要組成部分,通過對圖書管理系統(tǒng)的運(yùn)行管理機(jī)制進(jìn)行調(diào)查研究,開發(fā)了此圖書系統(tǒng)。本系統(tǒng)中解決了學(xué)校圖書管理事務(wù)中的常用基本問題以及相
5、關(guān)統(tǒng)計(jì)工作。本系統(tǒng)中包含 6 個(gè)功能模塊:系統(tǒng)設(shè)置,讀者管理,圖書管理,圖書借還,系統(tǒng)查詢和更改口令。本系統(tǒng)使有 jsp 進(jìn)行網(wǎng)頁界面的設(shè)計(jì),使用 MVC 設(shè)計(jì)模式,采用了開源框架 Struts,它采用了當(dāng)今軟件設(shè)計(jì)的最新技術(shù),具有開發(fā)效率高、設(shè)計(jì)靈活、生成的軟件界面友好美觀等特點(diǎn)。本系統(tǒng)中通過 JDBC 驅(qū)動(dòng)和數(shù)據(jù)庫進(jìn)行無縫連接,后端的數(shù)據(jù)庫是 mysql,也是一個(gè)開源的數(shù)據(jù)庫系統(tǒng),該數(shù)據(jù)庫具有較高的完整性,一致性和安全性。關(guān)鍵詞:圖書管理;信息管理;jsp;struts推薦精選Abstract With the progress of science and technology, the
6、 astonishing rapid development of the computer industry has been improving peoples working efficiency greatly.The introduction of computerized information system has sharply changed the management in many systems in many fields. The management system of the library takes an important role in the adm
7、inistration of school organization. I desigen the system after the thorough investigations about the library management systems mechanism. This system contains with reader informantion management model, book information management model, books borrowing and returning including system information que
8、ry and password setting.The system is contrived with Java Server Pages Techonolege as well as Struts,the software design mode of MVC with open source framework techonolege, which makes this system have the advantages of efficiently designed with beauteous and friendly interface . This system use jdb
9、c driver to connect the mysql database server,which is also an open source database system for its users. The batabase was desigend with highly integrity, security, and consistency.Key words: book management, management of information ,jsp,struts推薦精選1.1. 緒緒 論論1.1 畢業(yè)設(shè)計(jì)主要任務(wù) 1.實(shí)現(xiàn)圖書館對所藏圖書的按類別、書名等多方面的查詢,
10、最大的方便讀者和圖書館工作人員對所需圖書的查詢;2.建立圖書館外借讀者數(shù)據(jù)庫,方便工作人員對讀者進(jìn)行有效管理;3.建立圖書館工作人員數(shù)據(jù)庫,限定每個(gè)工作人員對軟件操作的權(quán)限,最大限度的保護(hù)數(shù)據(jù)庫;4.實(shí)現(xiàn)圖書館對新書入庫,舊書注銷的簡單處理,并且建立書籍檔案,方便進(jìn)貨;5.實(shí)現(xiàn)圖書館1.2 目前圖書管理系統(tǒng)存在的問題1)檢索速度慢、效率低因?yàn)閳D書館的藏書種類多、數(shù)量多,將藏書準(zhǔn)確地分門別類,快速檢索,手工進(jìn)行非常困難往往是終于查到了二偉的信息,館中沒有此書或已被別人借走。圖書館的規(guī)模越大,這個(gè)問題越突出。2)借書、還書工作量大借書、還書頻率越大,說明圖書館的作用越大,然而隨之而來的大量的借書、
11、還書登記、實(shí)存圖書的更新以及借出圖書超期、遺失等的處理,其工作量之大,往往是人工操作所難以勝任的。而且經(jīng)常會(huì)出現(xiàn)這樣那樣的差錯(cuò)。3)圖書統(tǒng)計(jì)工作難、藏書更新不能及時(shí)完成。圖書館的圖書應(yīng)根據(jù)科學(xué)技術(shù)的發(fā)展和教學(xué)工作的需要及時(shí)添加和更新,然而由于藏書數(shù)量及圖書種類越來越多,加上自然損耗,人為破壞,使圖書的統(tǒng)計(jì)工作難以及時(shí)完成,藏書的更新也就很難有針對性地進(jìn)行,藏書的知識(shí)結(jié)構(gòu)得不到良好地控制。我校也是一所發(fā)展中的高校,近兒年的發(fā)展速度很快,圖書館的規(guī)模和藏書數(shù)量也不斷的擴(kuò)大,為了解決海量圖書的管理問題,改變傳統(tǒng)的管理方式也是迫在眉睫了。1.3 課題意義隨著計(jì)算機(jī)的廣泛應(yīng)用,其逐步成為現(xiàn)代化的標(biāo)志。圖
12、書館或者一些企業(yè)內(nèi)部,甚至是書店,在正常運(yùn)行過程中總是面對大量的讀者信息,書籍信息以及兩者相互作用產(chǎn)生的借書信息、還書信息。因此需要對讀者資源、書籍資源、借書信息、還書信息進(jìn)行管理,及時(shí)了解各個(gè)環(huán)節(jié)中信息的變更,要對因此而產(chǎn)生的單據(jù)進(jìn)行及時(shí)的處理,為了提高圖書館或者企業(yè)內(nèi)部對圖書存銷的自動(dòng)化的管理,能夠更快速的滿足讀者的要求,提高各種工作的效率,現(xiàn)對其設(shè)計(jì)相應(yīng)的系統(tǒng),以達(dá)到上述的目的1。圖書管理系統(tǒng)的主要功能是實(shí)現(xiàn)圖書館圖書借閱和歸還的管理的自動(dòng)化。圍繞這一推薦精選主要功能,本系統(tǒng)涉及到以下核心功能:借閱管理,歸還管理。除了這些核心功能外,還包括一些基本和輔助功能,它們是:用戶管理、推薦精選圖
13、書館參數(shù)管理、圖書管理、統(tǒng)計(jì)查詢。1.4 論文的工作和安排本次設(shè)計(jì)的目標(biāo)是,開發(fā)一個(gè)圖書館借閱管理系統(tǒng)。借助該系統(tǒng),管理員通過快捷可靠的數(shù)據(jù)庫管理,方便的管理圖書館的信息資料,規(guī)范化的管理讀者用戶,設(shè)定不同用戶權(quán)限,并能通過互聯(lián)網(wǎng)向讀者提供更為方便的在線查詢服務(wù),方便讀者的使用,最終達(dá)到提高圖書館資源利用效率的目的。論文設(shè)計(jì)和實(shí)現(xiàn)了圖書借閱管理系統(tǒng)系統(tǒng),可以根據(jù)用戶的不同權(quán)限,對圖書館的的各種信息進(jìn)行添加、刪除、修改或查詢操作。論文分為五個(gè)部分:第一章即本章緒論,簡述圖書館借閱管理系統(tǒng)這個(gè)課題的背景情況以及開發(fā)本系統(tǒng)的意義。第二章為需求分析,本章中明確了系統(tǒng)需要實(shí)現(xiàn)的功能,分析了系統(tǒng)的用例,并
14、介紹根據(jù)系統(tǒng)的需求選擇的開發(fā)工具和技術(shù)的概況。第三章是總體設(shè)計(jì),詳細(xì)描述了本系統(tǒng)中數(shù)據(jù)庫的設(shè)計(jì)情況,并給出了系統(tǒng)總體界面的設(shè)計(jì)方案。 第四章為程序設(shè)計(jì)與編碼各主要功能模塊的實(shí)現(xiàn)方法和部分關(guān)鍵代碼,同時(shí)提供了個(gè)主要界面運(yùn)行的參考圖片,以更直觀了解系統(tǒng)的實(shí)現(xiàn)情況。第五章是軟件測試,測試系統(tǒng)功能實(shí)現(xiàn)并對測試結(jié)果進(jìn)行記錄分析第六章為結(jié)束語,為此次畢業(yè)設(shè)計(jì)做一個(gè)總結(jié),總結(jié)所獲得的經(jīng)驗(yàn)和體會(huì)。推薦精選2.圖書借閱管理需求分析2.1 可行性分析采用現(xiàn)代化統(tǒng)一的計(jì)算機(jī)信息網(wǎng)站系統(tǒng),能夠有效優(yōu)化圖書館管理系統(tǒng),使其高效的發(fā)揮最大作用,能夠迅捷的為讀者提供相應(yīng)的服務(wù)。開發(fā)本系統(tǒng)的可行性研究如下:2.1.1 技術(shù)可
15、行性技術(shù)上的可行性分析主要分析技術(shù)條件能否順利完成開發(fā)工作,軟、硬件能否滿足需要。本系統(tǒng)采用 JSP 開發(fā)出友好美觀的人機(jī)界面,便于用戶理解、操作。數(shù)據(jù)庫管理系統(tǒng)采用 MySQL,它能夠處理大量數(shù)據(jù),同時(shí)保持?jǐn)?shù)據(jù)的完整性、安全性。因此本系統(tǒng)的開發(fā)平臺(tái)已成熟可行。硬件方面,在科技飛速發(fā)展的今天,硬件更新速度越來越快,容量越來越大,可靠性越來越高,價(jià)格越來越便宜,因此硬件平臺(tái)也能夠滿足本系統(tǒng)所需2。2.1.2.經(jīng)濟(jì)可行性鑒于計(jì)算機(jī)技術(shù)發(fā)展異常迅猛,在硬件軟件配置以及開發(fā)技術(shù)均以可行的情況下開發(fā)這樣一個(gè)管理系統(tǒng)成本不會(huì)很高,但其可以大大提高圖書館的工作效率,也是圖書館管理發(fā)展的必然趨勢,其必將有比較
16、寬闊的市場,因此改性統(tǒng)在經(jīng)濟(jì)可行性上時(shí)可行的2。2.2 圖書借閱管理系統(tǒng)需求概述2.2.1 系統(tǒng)目標(biāo)該系統(tǒng)主要建立一個(gè)基于 B/S 模式的圖書館借閱管理系統(tǒng),面對當(dāng)起很多小型圖書管理仍是人工管理帶來的檢索速度慢,效率低,借閱歸還圖書量大,圖書統(tǒng)計(jì)工作量大,藏書不能完成及時(shí)更新的問題,該系統(tǒng)可以對跟系統(tǒng)的三個(gè)用戶類型的使用實(shí)現(xiàn):1.對于讀者在本系統(tǒng)的應(yīng)用下可實(shí)現(xiàn)按照各種方式(如:書名,編號(hào),作者)查詢圖書館的藏書請客,方便的借閱圖書,續(xù)借圖書,歸還圖書,能夠查詢自己的借閱圖書情況。2.對于圖書館工作人員能夠?qū)崿F(xiàn)方便的對圖書進(jìn)行查詢,方便的進(jìn)行讀者借閱情況查詢,方便的進(jìn)行借書還書處理等,便捷的對圖
17、書信息進(jìn)行添加、修改、刪除,分類管理等操作,對讀者信息進(jìn)行相關(guān)添加,修改,分類管理等操作。3.對于系統(tǒng)管理員可以對圖書館信息進(jìn)行修改更新操作,對系統(tǒng)用戶進(jìn)行添加、修改、刪除、權(quán)限設(shè)置等操作,對圖書館的辦證參數(shù)進(jìn)行修改維護(hù)等操作功能。推薦精選2.2.2 用戶類和用戶特性圖書借閱管理系統(tǒng)是一個(gè)基于 B/S 模式的對圖書館進(jìn)行高效率管理的應(yīng)用系統(tǒng),它的用戶主要是讀者和圖書管理員,學(xué)生通過該系統(tǒng)進(jìn)行圖書查詢進(jìn)而對自己需要的圖書進(jìn)行借閱及自己的借閱情況進(jìn)行查詢,圖書管理員則通過本系統(tǒng)實(shí)現(xiàn)對圖書及讀者的高效管理,除此之外,還需要一個(gè)系統(tǒng)管理員對不同的用戶進(jìn)行權(quán)限的設(shè)置等操作2。三類用戶的具體描述如下表所示
18、:表 2.1 用戶具體描述用戶類描述讀者讀者是該系統(tǒng)的重要的使用角色,他們通過該系統(tǒng)查詢自己需要的圖書信息,并像圖書管理員提出借閱圖書的申請進(jìn)而借閱自己所需的圖書,還可以通過對自己借閱情況進(jìn)行查詢。圖書管理員圖書管理員是該系統(tǒng)的另一個(gè)重要使用者,圖書管理員通過該系統(tǒng)進(jìn)行圖書的增加,修改,刪除,分類管理等操作,實(shí)現(xiàn)對讀者借閱歸還續(xù)接圖書的方便操作,實(shí)現(xiàn)對系統(tǒng)中圖書,讀者,讀者借閱情況的查詢,信息更改維護(hù)等操作,管理讀者類型,對不同類型讀者可借閱的圖書數(shù)量進(jìn)行設(shè)置等圖書館的基本操作。系統(tǒng)員系統(tǒng)管理員主要是圖書管理系統(tǒng)中用戶的管理,實(shí)現(xiàn)用戶添加修改刪除以及用戶權(quán)限設(shè)置等操作,實(shí)現(xiàn)對圖書館基本信息的修
19、改維護(hù)等操作,還包括對圖書館書架的設(shè)置操作,以及校外讀者辦證所需費(fèi)用、證件有效期等參數(shù)的設(shè)置。2.3 圖書借閱管理系統(tǒng)需求模型2.3.1 功能描述圖書借閱管理系統(tǒng)的主要任務(wù)是實(shí)現(xiàn)讀者迅速檢索查詢,方便借閱歸還圖書,圖書管理員高效的完成系統(tǒng)的各項(xiàng)基本操作,系統(tǒng)管理員是管理用戶設(shè)置權(quán)限等操作3,從圖 2.1 可以看出圖書借閱管理系統(tǒng)要完成一下功能:1. 登錄。讀者、圖書管理員,系統(tǒng)管理員進(jìn)入該系統(tǒng)必須登錄,身份驗(yàn)證正確了才可以進(jìn)入該系統(tǒng),以不同身份進(jìn)入該系統(tǒng)所對應(yīng)的系統(tǒng)使用權(quán)限是不同的。2. 系統(tǒng)設(shè)置功能:系統(tǒng)管理員可以設(shè)置圖書館相關(guān)的參數(shù)信息。3.用戶管理功能:對系統(tǒng)用戶進(jìn)行添加,修改,刪除,權(quán)
20、限設(shè)置等操作。4.查詢功能:推薦精選對圖書館的館藏圖書,借閱歷史,讀者用戶等信息進(jìn)行查詢。5.其他功能系統(tǒng)管理員可以修改自己的密碼,并且擁有其他用戶所擁有的所有功能。 2.3.2 圖書管理員詳細(xì)功能描述1.讀者管理功能:對讀者的類型和讀者檔案進(jìn)行管理,包括添加,修改,刪除讀者類型和讀者用戶的相關(guān)信息,管理不同類型讀者借閱圖書的數(shù)量。2. 圖書管理功能:包括對圖書類型和具體圖書信息的管理,可以增加,修改,刪除圖書,豐富具體圖書的信息,對不同圖書進(jìn)行分類操作。3. 圖書借閱功能:可以完成對讀者借閱,續(xù)接和還書的操作。4. 系統(tǒng)查詢功能:查詢圖書相關(guān)資料,借閱歷史和借閱到期題型.5. 修改密碼功能:
21、可以修改自己的登錄密碼。2.3.3 讀者詳細(xì)功能描述1) 修改登陸密碼:修改自己的登錄密碼。2) 查詢功能:對圖書館圖書信息進(jìn)行查詢,對自己當(dāng)前借閱書籍進(jìn)行查詢,對圖書規(guī)劃到期題型進(jìn)行查看。2.3.4 主要用例的用例描述圖書借閱借閱管理系統(tǒng)涉及到的用例包括:圖書借閱,圖書歸還,讀書查詢,讀者信息管理,圖書信息管理,用戶管理等,現(xiàn)就系統(tǒng)的主要用例圖書借閱,圖書歸還,圖書查詢進(jìn)行詳細(xì)分析。1)用例“圖書借閱”用例名稱圖書借閱標(biāo)識(shí)符UC-1參與者讀者,圖書管理員描述讀書可以通過查詢等方式獲得自己想借閱的圖書的名稱,編號(hào),等推薦精選其他可唯一識(shí)別的信息,向圖書管理員提出借閱請求,管理員在系統(tǒng)中記錄相應(yīng)
22、信息,將圖書交給讀者,借閱成功。推薦精選前置條件1. 登錄;2. 進(jìn)入圖書借閱的頁面后置條件1 更新圖書借閱列表; 主干過程1.0 借閱圖書1. 讀者請求借閱新地圖書,并提供自己的編號(hào)2. 系統(tǒng)顯示讀者借閱情況的表單3. 讀者提供想借閱的圖書的標(biāo)號(hào)4. 系統(tǒng)存儲(chǔ)讀者和借閱的圖書,并將之存儲(chǔ)到數(shù)據(jù)庫中5. 系統(tǒng)更新借閱列表分支過程1.1 選擇重置(第 3 步后分支出來)1. 讀者選擇重置2. 系統(tǒng)刷新該頁面異常1.0.E.1 讀者借閱已滿(第 2 步)1讀者借閱的數(shù)目已經(jīng)到達(dá)自己借閱的上線2. 系統(tǒng)將錯(cuò)誤信息顯示在借閱頁面3. 系統(tǒng)重新啟動(dòng)該用例被包含用例無被擴(kuò)展用例無優(yōu)先級(jí)高 2)用例“圖書歸
23、還”用例名稱圖書歸還標(biāo)識(shí)符UC-1參與者讀者,圖書管理員描述讀者將自己借閱的圖書歸還圖書館。前置條件1. 登錄;2. 進(jìn)入圖書歸還頁面后置條件1 更新圖書歸還列表; 主干過程2.0 圖書歸還推薦精選6. 讀者請求歸還借閱的圖書并提供自己的編號(hào)7. 系統(tǒng)顯示該讀者的借閱信息表8. 使用者填將要?dú)w還的圖書交給管理員9. 管理員輸入圖書編號(hào),系統(tǒng)存儲(chǔ)歸還信息,并將之存儲(chǔ)到數(shù)據(jù)庫中10.系統(tǒng)更圖書歸還列表分支過程1.1 選擇重置(第 3 步后分支出來)1. 讀者選擇重置2. 系統(tǒng)刷新該頁面異常1.0.E.1 讀者借閱超時(shí)(第 4 步)1該書超出了應(yīng)該歸還的時(shí)間范圍2. 系統(tǒng)將罰款信息顯示在歸還頁面3.
24、 需要繳納罰金被包含用例無被擴(kuò)展用例無優(yōu)先級(jí)高3)用例“圖書查詢”用例名稱圖書查詢標(biāo)識(shí)符UC-3參與者讀者,圖書管理員描述讀者通過圖書的標(biāo)號(hào),名稱等信息對相應(yīng)的圖書進(jìn)行查詢。前置條件1. 登錄; 2. 轉(zhuǎn)到圖書查詢頁面后置條件1. 查詢頁面顯示相應(yīng)的圖書的信息主干過程圖書查詢1. 讀者輸入想要查詢的圖書信息2. 系統(tǒng)顯示相應(yīng)的圖書信息3. 讀者點(diǎn)擊讀書名稱,跳轉(zhuǎn)到圖書詳細(xì)信息鏈接頁面推薦精選分支過程輸入信息時(shí)(第 2 步后)1. 系統(tǒng)顯示:請選擇查詢依據(jù)2. 用戶進(jìn)行相應(yīng)選擇重新查詢(第 2 步后)1. 系統(tǒng)已經(jīng)顯示了相應(yīng)圖書信息2. 讀者想查詢其他圖書異常5.0.E.1 查詢的圖書不存在(第
25、 2 步后)1. 讀者輸入的圖書信息不能在數(shù)據(jù)庫中查詢到2. 系統(tǒng)顯示暫時(shí)無該圖書信息3. 重新啟動(dòng)該用例被包含用例無被擴(kuò)展用例無優(yōu)先級(jí)高3.總體設(shè)計(jì)3.1 數(shù)據(jù)庫設(shè)計(jì)3.1.1 數(shù)據(jù)庫設(shè)計(jì)概述數(shù)據(jù)庫是整個(gè)系統(tǒng)的基石,數(shù)據(jù)庫的設(shè)計(jì)優(yōu)劣直接影響到整個(gè)系統(tǒng)的設(shè)計(jì)成敗,本節(jié)對數(shù)據(jù)庫的設(shè)計(jì)進(jìn)行專門闡述5。數(shù)據(jù)庫是數(shù)據(jù)管理的最新技術(shù)。十多年來數(shù)據(jù)庫管理系統(tǒng)已從專用的應(yīng)用程序發(fā)展成為通用的系統(tǒng)軟件。由于數(shù)據(jù)庫具有數(shù)據(jù)結(jié)構(gòu)化,最低冗余度,較高的程序與數(shù)據(jù)獨(dú)立性,易于擴(kuò)充,易于編制應(yīng)用程序等優(yōu)點(diǎn),較大的信息系統(tǒng)都是建立在數(shù)據(jù)庫設(shè)計(jì)之上的。因此不僅大型計(jì)算機(jī)及中小型計(jì)算機(jī),甚至微型機(jī)都配有數(shù)據(jù)庫管理系統(tǒng)6。數(shù)據(jù)
26、庫系統(tǒng)的出現(xiàn)使信息系統(tǒng)從以加工數(shù)據(jù)的程序?yàn)橹行霓D(zhuǎn)向圍繞共享的數(shù)據(jù)庫為中心的新階段。這樣既便于數(shù)據(jù)的集中管理,又有利于應(yīng)用程序的研制和維護(hù),提高了數(shù)據(jù)的利用性和相容性,提高了決策的可靠性。目前,數(shù)據(jù)庫已經(jīng)成為現(xiàn)代信息系統(tǒng)不可分割的重要組成部分。數(shù)據(jù)庫技術(shù)也是計(jì)算機(jī)領(lǐng)域中發(fā)展最快的技術(shù)之一。數(shù)據(jù)庫設(shè)計(jì)是把現(xiàn)實(shí)世界的實(shí)體模型與需求轉(zhuǎn)換成數(shù)據(jù)庫的模型的過程,它是建立數(shù)據(jù)庫應(yīng)用系統(tǒng)的核心問題。數(shù)據(jù)庫及其應(yīng)用的性能都建立在良好的數(shù)據(jù)庫設(shè)計(jì)的基礎(chǔ)之上,數(shù)據(jù)庫的數(shù)據(jù)是一切操作的基礎(chǔ),如果數(shù)據(jù)庫設(shè)計(jì)不好,那么其它一切用于提高推薦精選數(shù)據(jù)庫性能的方法收效都是有限的。數(shù)據(jù)庫設(shè)計(jì)的關(guān)鍵是如何使設(shè)計(jì)的數(shù)據(jù)庫能合理地存儲(chǔ)
27、用戶的數(shù)據(jù),方便用戶進(jìn)行數(shù)據(jù)處理推薦精選6。設(shè)計(jì)數(shù)據(jù)庫必須遵循一定的規(guī)則,在關(guān)系型數(shù)據(jù)庫中,這種規(guī)則就是范式,范式是符合某一種級(jí)別的關(guān)系模式的集合。一般人們設(shè)計(jì)數(shù)據(jù)庫遵循第三范式。即:數(shù)據(jù)庫表中不包含已在其他表中包含的非主關(guān)鍵字信息。采用范式減少了數(shù)據(jù)冗余,節(jié)約了存儲(chǔ)空間,同時(shí)加快了增、刪、改的速度6。整個(gè)系統(tǒng)所包括的信息有圖書信息、讀者信息、留言信息、圖書借閱信息、圖書歸還信息、系統(tǒng)用戶信息、讀者類型信息??蓪⑦@些信息抽象為下列系統(tǒng)所需要的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):1)圖書信息(編號(hào),圖書名稱,圖書類型,作者,譯者,ISBN 號(hào),價(jià)格,出版社,所在書架,入庫時(shí)間,操作員)2)圖書類型(編號(hào),名稱,可
28、借閱天數(shù))3)讀者信息(編號(hào),姓名,性別,條形碼,讀者類型,出生年月,有效證件,證件號(hào)碼,登記日期,電話,郵箱,操作員)4)讀者類型(名稱,可借閱圖書本數(shù))5)圖書借閱信息(圖書編號(hào),讀者 ID,借出時(shí)間,應(yīng)還時(shí)間,是否歸還,操作員)6)圖書歸還信息(圖書編號(hào),讀者 ID,歸還時(shí)間,操作員)7)用戶(編號(hào),用戶名稱,密碼)8)圖書館信息(編號(hào),名稱,館長,電話,地址,郵箱,創(chuàng)建日期,簡介)圖書館參數(shù)信息(編號(hào),辦證費(fèi)用,有效期限)注:帶下劃線表示主鍵在這里使用 E-R 圖描述了圖書借閱管理系統(tǒng)的數(shù)據(jù)模型。圖 3.1 圖書借閱管理系統(tǒng)E-R 圖描述了該系統(tǒng)所涉及到的實(shí)體以及他們之間的關(guān)系。具體結(jié)
29、構(gòu)如下圖所示:推薦精選.3.1.23.1.2 數(shù)據(jù)庫設(shè)計(jì):圖書信息表:字段名說明類型長度及備注ISBN國際標(biāo)準(zhǔn)書號(hào)Varchar(13)主鍵typeId圖書類型 idIntBookname書名Varchar(40)Writer作者Varchar(21)Translater譯者Varchar(30)可以為空Publisher出版社Varchar(50)Date出版日期SmalldatetimePrice價(jià)格money圖書類別表:字段名說明類型長度及備注TypeName圖書類型Varchar(20)Id自動(dòng)編號(hào)Int主鍵用戶信息表:字段名說明類型長度及備注Id自動(dòng)編號(hào)Int主鍵Name姓名Varc
30、har(2)Sex性別Varchar(2)Age年齡int推薦精選Identitycard證件號(hào)碼Varchar(2)Workdate辦證日期datetimeTel電話號(hào)碼Varchar(2)Yajin押金IntPassword密碼Nvarchar(10)admin管理員Nchar(10)讀者信息表:字段名說明類型長度及備注Name姓名Varchar(10)Sex性別Varchar(2)Age年齡intidentityCard證件號(hào)碼Varchar(30)Date日期SmalldatetimemanNum最大書量IntTel電話號(hào)碼Varchar(15)keepMoney押金MineyZj證件
31、類型IntZy職業(yè)Varchar(50)ISBN國際標(biāo)準(zhǔn)書號(hào)Varchar(13)bztime辦證時(shí)間datetime3.2 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)該系統(tǒng)在 Windows98/2000/XP 環(huán)境下,主要采用 JSP 開發(fā)工具,MySQL 數(shù)據(jù)庫來設(shè)計(jì),開發(fā)過程與成果應(yīng)符合 GB/T 11457-1995 軟件工程術(shù)語,GB/T 8567-1988 計(jì)算機(jī)軟件產(chǎn)品開發(fā)文件編制指南等7。3.2.1 圖書管理系統(tǒng)總體結(jié)構(gòu)圖繪制系統(tǒng)結(jié)構(gòu)圖的過程,實(shí)際上就是對系統(tǒng)功能模塊進(jìn)行分解設(shè)計(jì)的過程,即合理地將數(shù)據(jù)流程圖轉(zhuǎn)變?yōu)樗枰南到y(tǒng)結(jié)構(gòu)圖8。系統(tǒng)結(jié)構(gòu)圖將會(huì)使讀者和用戶能直觀的了解系統(tǒng)的結(jié)構(gòu)模式,理解系統(tǒng)的各個(gè)
32、功能的結(jié)構(gòu),能很好地方便用戶使用和理解整個(gè)系統(tǒng)。本系統(tǒng)的結(jié)構(gòu)圖如下:推薦精選圖 3.3 系統(tǒng)總體結(jié)構(gòu)圖根據(jù)需求分析的結(jié)果,按照“低耦合、高內(nèi)聚”的原則,本系統(tǒng)將劃分為以下主要功能模塊:系統(tǒng)管理員功能模塊,讀者管理功能模塊,圖書管理功能模塊,圖書借還功能模塊;系統(tǒng)查詢功能模塊8。3.2.2 系統(tǒng)管理員模塊功能該模塊主要包括圖書館信息設(shè)置,用戶管理,參數(shù)設(shè)置,書架設(shè)置。1.圖書館信息設(shè)置該功能選項(xiàng)用于系統(tǒng)管理員對圖書館名稱,地址,聯(lián)系方式,簡介等信息的管理更新,以便于讀者和外界人士對圖書館的了解。該功能是對 td_library 表進(jìn)行維護(hù)修改等操作,修改后的信息將被保存在該表中。2.用戶設(shè)置該功
33、能子模塊主要是系統(tǒng)管理員對系統(tǒng)用戶的管理,通過此子模塊的功能實(shí)現(xiàn)可以對用戶進(jìn)行添加、修改、刪除、權(quán)限設(shè)置等操作,該子模塊能將圖書館的不同工作細(xì)化到不同的相關(guān)人員,極大地提高了圖書館的工作效率。該操作是對 tb_users 表進(jìn)行操作,在對用戶進(jìn)行了相關(guān)的操作后把操作后的最新信息存放在該表中。3.圖書館參數(shù)設(shè)置通過該子模塊設(shè)置在圖書館辦理臨時(shí)讀者證的費(fèi)用及證件有效期限。該操作是對于tb_parameter 表進(jìn)行,并把操作后的最新數(shù)據(jù)存放在該表中。推薦精選3.2.3 讀者管理模塊功能該模塊主要包含讀者類型管理和讀者信息管理兩個(gè)子模塊:1. 讀者類型管理該子模塊是對圖書館系統(tǒng)用戶讀者的類型進(jìn)行維護(hù)
34、,修改等操作,在此模塊中主要設(shè)置不同類型讀者一次性可借閱的圖書的數(shù)量,該操作是對于 tb_resderType 表進(jìn)行,并將操作結(jié)果保存在該表中。2. 讀者信息管理該子模塊是對讀者的基本信息進(jìn)行管理,可以對讀者的基本信息進(jìn)行添加,修改,刪除操作,這下操作均是對 tb_resder 表進(jìn)行的,并將操作后的結(jié)果保存在該表中。3.2.4 圖書管理模塊功能 圖書管理功能模塊可分為圖書類型管理和圖書信息管理兩個(gè)子模塊,其各自的實(shí)現(xiàn)分別如下面表中所示:表 3.11 圖書類型管理描述圖書類型管理功能描述對圖書進(jìn)行類型設(shè)置分類,并對不同類型圖書可被借閱的天數(shù)進(jìn)行設(shè)置訪問的數(shù)據(jù)庫表圖書類型表:tb_bookTy
35、pe進(jìn)行的操作添加、修改、刪除圖書類型,對不同類型圖書可被借閱的天數(shù)進(jìn)行設(shè)置產(chǎn)生的結(jié)果 對圖書類型進(jìn)行管理,對不同類型圖書參數(shù)進(jìn)行設(shè)置結(jié)果存儲(chǔ)位置或輸出 結(jié)果存儲(chǔ)在圖書類型表(tb_bookType)中,結(jié)果在圖書類型查詢頁面輸出表 3.12 圖書信息管理描述圖書信息管理功能描述對圖書進(jìn)行基本操作和信息管理訪問的數(shù)據(jù)庫表圖書類型表:tb_bookType進(jìn)行的操作添加、修改、刪除圖書,對圖書的編號(hào)、所在書架、價(jià)格、出版社等基本信息進(jìn)行管理產(chǎn)生的結(jié)果 對圖書基本操作管理,對不同圖書參數(shù)進(jìn)行各自信息的設(shè)置管理結(jié)果存儲(chǔ)位置或輸出 結(jié)果存儲(chǔ)在圖書類型表(tb_book)中,結(jié)果在圖書查推薦精選詢頁面輸
36、出推薦精選3.2.5 圖書借還模塊功能該功能模塊主要實(shí)現(xiàn)對讀者借閱、續(xù)接、歸還圖書的操作,其中子模塊各自的描述如下各表所列:表 3.13 圖書借閱描述圖書借閱管理功能描述對讀者借閱圖書進(jìn)行基本操作和信息管理訪問的數(shù)據(jù)庫表圖書信息表: tb_bookinfo讀者信息表:tb_reader讀者類型信息表:tb_resderType進(jìn)行的操作對讀者借閱圖書進(jìn)行管理產(chǎn)生的結(jié)果 讀者借閱成功,系統(tǒng)對借閱信息進(jìn)行記錄結(jié)果存儲(chǔ)位置或輸出 結(jié)果存儲(chǔ)在圖書借閱表(tb_borrow)中,結(jié)果在圖書借閱查詢頁面輸出表 3.14 圖書續(xù)借描述圖書續(xù)接管理功能描述對讀者借閱圖書進(jìn)行提續(xù)接操作訪問的數(shù)據(jù)庫表圖書借閱表:
37、 tb_borrow進(jìn)行的操作對借閱的圖書進(jìn)行續(xù)接產(chǎn)生的結(jié)果 讀者歸還日期延后一個(gè)月結(jié)果存儲(chǔ)位置或輸出 結(jié)果存儲(chǔ)在圖書借閱表(tb_borrow)中表 3.15 圖書歸還描述圖書歸還管理功能描述對讀者歸還圖書進(jìn)行基本操作和信息管理訪問的數(shù)據(jù)庫表圖書借閱信息表: tb_borrow讀者類型信息表:tb_resderType進(jìn)行的操作對讀者借閱圖書進(jìn)行管理產(chǎn)生的結(jié)果 讀者借閱成功,系統(tǒng)對借閱信息進(jìn)行記錄推薦精選結(jié)果存儲(chǔ)位置或輸出 結(jié)果存儲(chǔ)在圖書歸還表(tb_giveback)中3.2.6 系統(tǒng)查詢模塊功能該模塊包括對圖書館藏書進(jìn)行查詢,對讀者借閱情況進(jìn)行查詢,以及對借閱到期和超期的讀者進(jìn)行提醒的信
38、息,其中三個(gè)子模塊的各自實(shí)習(xí)如下所示:表 3.16 圖書查詢描述圖書查詢功能描述系統(tǒng)用戶對館藏圖書信息進(jìn)行查詢操作訪問的數(shù)據(jù)庫表圖書信息表: tb_book進(jìn)行的操作用戶通過圖書的編號(hào),作者,出版社等信息對圖書進(jìn)行相關(guān)查詢產(chǎn)生的結(jié)果 讀者查詢到相應(yīng)的圖書或系統(tǒng)提醒查詢的圖書不存在結(jié)果存儲(chǔ)位置或輸出結(jié)果在圖書查詢頁面輸出表 3.17 圖書借閱查詢描述圖書借閱查詢功能描述系統(tǒng)用戶對讀者借閱圖書信息進(jìn)行查詢操作訪問的數(shù)據(jù)庫表圖書借閱表: tb_borrow進(jìn)行的操作用戶通過圖書的編號(hào),讀者編號(hào)等信息對摸個(gè)讀者或某本圖書的借閱情況進(jìn)行相關(guān)查詢產(chǎn)生的結(jié)果 查詢到相應(yīng)的讀者或圖書得借閱情況結(jié)果存儲(chǔ)位置或輸
39、出結(jié)果在圖書查詢頁面輸出表 3.18 圖書借閱到期提醒描述圖書借閱到期提醒管理功能描述對讀者借閱的到期圖書進(jìn)行提醒訪問的數(shù)據(jù)庫表圖書借閱表: tb_borrow圖書歸還表:tb_giveback讀者信息表:tb_reader讀者類型信息表:tb_resderType推薦精選進(jìn)行的操作對借閱到期和超期的讀者進(jìn)行提醒產(chǎn)生的結(jié)果 向借閱到期和借閱超期的讀者發(fā)送郵件等提醒信息結(jié)果存儲(chǔ)位置或輸出 結(jié)果存儲(chǔ)在圖書借閱到期提醒表推薦精選4.程序設(shè)計(jì)與編碼4.1 開發(fā)平臺(tái)與工具4.1.1 J2EE 平臺(tái) J2EE ,即是 Java2 平臺(tái)企業(yè)版(Java 2 Platform Enterprise Editi
40、on) ,是原 Sun 公司(現(xiàn)已被甲骨文公司收購)為企業(yè)級(jí)應(yīng)用推出的標(biāo)準(zhǔn)平臺(tái)。它簡化了企業(yè)解決方案的開發(fā)、部署和管理相關(guān)復(fù)雜問題的體系結(jié)構(gòu),J2EE 技術(shù)的基礎(chǔ)就是核心 Java 平臺(tái)或 Java 2 平臺(tái)的標(biāo)準(zhǔn)版,J2EE 不僅鞏固了標(biāo)準(zhǔn)版中的許多優(yōu)點(diǎn),例如編寫一次、隨處運(yùn)行的特性、方便存取數(shù)據(jù)庫的 JDBC API、CORBA 技術(shù)以及能夠在 Internet 應(yīng)用中保護(hù)數(shù)據(jù)的安全模式等等,同時(shí)還提供了對 EJB(Enterprise JavaBeans)、Java Servlets API、JSP(Java Server Pages)以及 XML 技術(shù)的全面支持。其最終目的就是成為一個(gè)
41、能夠使企業(yè)開發(fā)者大幅縮短投放市場時(shí)間的體系結(jié)構(gòu)。J2EE 體系結(jié)構(gòu)提供中間層集成框架用來滿足無需太多費(fèi)用而又需要高可用性、高可靠性以及可擴(kuò)展性的應(yīng)用的需求。通過提供統(tǒng)一的開發(fā)平臺(tái),J2EE 降低了開發(fā)多層應(yīng)用的費(fèi)用和復(fù)雜性,同時(shí)提供對現(xiàn)有應(yīng)用程序集成強(qiáng)有力支持,完全支持 Enterprise JavaBeans,有良好的向?qū)еС执虬筒渴饝?yīng)用,添加目錄支持,增強(qiáng)了安全機(jī)制,提高了性能9。 在開發(fā)圖書館借閱管理系統(tǒng)的過程中,應(yīng)用 Myeclipse6.0.1,它可以在數(shù)據(jù)庫和 J2EE 的開發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。Myeclipse 是功能豐富的 J2EE 集成
42、開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL10。4.1.2 WEB 服務(wù)器和數(shù)據(jù)庫在系統(tǒng)的開發(fā)過程中使用的 Web 應(yīng)用服務(wù)器是 Tomcat,是 Apache 軟件基金會(huì)(Apache Software Foundation)的 Jakarta 項(xiàng)目中的一個(gè)核心項(xiàng)目,由 Apache、SUN和其他一些公司及個(gè)人共同開發(fā)而成。由于有了 Sun 的參與和支持,最新的 Servlet 和JSP 規(guī)范總是能在 Tomcat 中得到體現(xiàn)。Tomcat 是一個(gè)小型的輕量級(jí)應(yīng)用服務(wù)器,它運(yùn)行時(shí)占用的系統(tǒng)資源小、擴(kuò)
43、展性好、支持負(fù)載平衡和郵件服務(wù)等開發(fā)應(yīng)用系統(tǒng)常用的功能,因此在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的時(shí)候,經(jīng)常被使用11。 使用 MySQL 作為數(shù)據(jù)庫開發(fā)工具。MySQL 是一個(gè)小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典 MySQL AB 公司。在 2008 年 1 月 16 號(hào)被 Sun 公司收購。目前 MySQL 被廣泛地應(yīng)用在 Internet 上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了 MySQL 作為網(wǎng)站數(shù)據(jù)庫推薦精選11。為了開發(fā)的便捷快速,使用 struts 第三方插件。Struts 是一個(gè)全新的 MV
44、C 框架,實(shí)在 WebWork 基礎(chǔ)上發(fā)展起來的12。開發(fā)系統(tǒng)用的系統(tǒng)工具如表 4.1 所示:表 4.1 系統(tǒng)開發(fā)平臺(tái)和工具工具名稱用途JDK 1.6.0_11MyEclipse MySQL 5.0SQLYog 6.1Tomcat 6.0Struts 1.0Java 開發(fā)工具包J2EE 集成開發(fā)環(huán)境小型關(guān)系數(shù)據(jù)庫管理系統(tǒng)MySQL 圖形化數(shù)據(jù)庫管理工具Web 應(yīng)用服務(wù)器第三方插件,可擴(kuò)展的 Java EE Web 框架4.2 程序設(shè)計(jì)4.2.1 程序設(shè)計(jì)概述在設(shè)計(jì)的 Web 層應(yīng)用了著名的 MVC 模式,V 有 JSP 來實(shí)現(xiàn),為了業(yè)務(wù)邏輯和表示的分離.它是基于 Web 應(yīng)用系統(tǒng),它的客戶端使
45、用 Broswer,然后是 Web 層的應(yīng)用,業(yè)務(wù)邏輯層(有 EJB 實(shí)現(xiàn)),資源管理層。客戶請求瀏覽頁面,一般 Web 層的 View 有 JSP 組成,并且使用了大量 Taglib。把每個(gè)請求映射到某個(gè) HTMLAction 類來響應(yīng)它。HTML Action 類是一個(gè)標(biāo)準(zhǔn)的類,執(zhí)行選擇的 HTML Action。使用 MVC 模式減少了代碼的復(fù)制,即減少了代碼的維護(hù),由于模型返回的格式不帶任何顯示格式,因而模型可以直接應(yīng)用于接口的使用,還因?yàn)?MVC 模型把不同的模型和不同的視圖組合在一起完成不同的請求,因此,控制層可以說包含了用戶請求權(quán)限的概念13。在設(shè)計(jì)中還因應(yīng)用了 Struts 框
46、架,Struts 跟 Tomcat、Turbine 等諸多 Apache 項(xiàng)目一樣,是開源軟件,這是它的一大優(yōu)點(diǎn)。使開發(fā)者能更深入的了解其內(nèi)部實(shí)現(xiàn)機(jī)制11。 除此之外,Struts 的優(yōu)點(diǎn)主要集中體現(xiàn)在 Taglib 和頁面導(dǎo)航。Taglib 是 Struts 的標(biāo)記庫,靈活動(dòng)用,能大大提高開發(fā)效率。頁面導(dǎo)航使系統(tǒng)的脈絡(luò)更加清晰。通過一個(gè)配置文件,即可把握整個(gè)系統(tǒng)各部分之間的聯(lián)系,這對于后期的維護(hù)有著莫大的好處11。4.2.2 數(shù)據(jù)庫與 Web 服務(wù)器的連接 數(shù)據(jù)庫連接時(shí)采用連接池技術(shù)鏈接SQL,具體代碼實(shí)現(xiàn)如下:推薦精選package com.ljj.dao;import java.sql.
47、Connection;import java.sql.Date;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import com.ljj.model.BookInfo;import com.ljj.model.BookType;import com.ljj.model.Operator;import com.ljj.model.Reader;import com.ljj.m
48、odel.User;public class Dao protected static String dbClassName = com.microsoft.sqlserver.jdbc.SQLServerDriver;protected static String dbUrl = jdbc:sqlserver:/localhost:1433;+ DatabaseName=db_library;SelectMethod=Cursor;protected static String dbUser = sa;protected static String dbPwd = zhangyong;pro
49、tected static String second = null;推薦精選private static Connection conn = null;/創(chuàng)建數(shù)據(jù)庫連接private Dao() try if (conn = null) Class.forName(dbClassName).newInstance();conn = DriverManager.getConnection(dbUrl, dbUser, dbPwd);System.out.println(數(shù)據(jù)庫連接成功!);elsereturn; catch (Exception ee) ee.printStackTrace()
50、;/執(zhí)行查詢private static ResultSet executeQuery(String sql) try if(conn=null)new Dao();return conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE).executeQuery(sql);推薦精選 catch (SQLException e) e.printStackTrace();return null; finally /執(zhí)行更新private static int executeUpdate(Stri
51、ng sql) try if(conn=null)new Dao();return conn.createStatement().executeUpdate(sql); catch (SQLException e) System.out.println(e.getMessage();/if(e.getMessage().equals(MicrosoftSQLServer 2000 Driver for JDBCSQLServerDELETE 語句與 COLUMN REFERENCE 約束 FK_TB_BORRO_REFERENCE_TB_BOOKI 沖突。該沖突發(fā)生于數(shù)據(jù)庫 db_librar
52、y,表 tb_borrow, column bookISBN。)return -1; finally 推薦精選/關(guān)閉數(shù)據(jù)庫public static void close() try conn.close(); catch (SQLException e) e.printStackTrace();finallyconn = null;/* * 管理員登錄方法 */public static Operator check(String name, String password) int i = 0;Operator operater=new Operator();String sql = se
53、lect * from tb_operator where name= + name+ and password= + password + and admin=1;ResultSet rs = Dao.executeQuery(sql);try while (rs.next() String names = rs.getString(1);operater.setId(rs.getString(id);推薦精選operater.setName(rs.getString(name);operater.setGrade(rs.getString(admin);operater.setPasswo
54、rd(rs.getString(password);if (names != null) i = 1; catch (Exception e) e.printStackTrace();Dao.close();return operater;/* * 查詢類別方法 */查詢圖書目錄public static List selectBookCategory() List list=new ArrayList();String sql = select * from tb_bookType;ResultSet rs = Dao.executeQuery(sql);try while (rs.next
55、() 推薦精選BookType bookType=new BookType();bookType.setId(rs.getString(id);bookType.setTypeName(rs.getString(typeName);list.add(bookType); catch (Exception e) e.printStackTrace();Dao.close();return list;public static List selectBookCategory(String bookType) List list=new ArrayList();String sql = select
56、 days from tb_bookType where typeName=+bookType+;ResultSet rs = Dao.executeQuery(sql);try while (rs.next() BookType type=new BookType();type.setDays(rs.getString(days);list.add(type); catch (Exception e) 推薦精選e.printStackTrace();Dao.close();return list;/* * 圖書類別表相關(guān)操作 * */插入圖書類型public static int Inser
57、tBookType(String bookTypeName)int i=0;tryString sql=insert into tb_bookType(typeName) values(+bookTypeName+);i=Dao.executeUpdate(sql);catch(Exception e)e.printStackTrace();return i;/更新圖書類別public static int UpdatebookType(String id,String typeName)推薦精選int i=0;tryString sql=update tb_bookType set type
58、Name=+typeName+ where id=+id+;/System.out.println(sql);i=Dao.executeUpdate(sql);catch(Exception e)e.printStackTrace();Dao.close();return i;/刪除圖書類別public static int DelbookType(String id)int i=0;tryString sql=delete from tb_bookType where id=+id+;/System.out.println(sql);i=Dao.executeUpdate(sql);catc
59、h(Exception e)e.printStackTrace();Dao.close();推薦精選return i;/* * 圖書信息表相關(guān)操作 */* * 插入圖書信息方法 */插入圖書信息public static int Insertbook(String ISBN,String typeId,String bookname,String writer,String translator,String publisher,Date date,Double price)int i=0;tryString sql=insert into tb_bookInfo(ISBN,typeId,bo
60、okname,writer,translator,publisher,date,price) values(+ISBN+,+typeId+,+bookname+,+writer+,+translator+,+publisher+,+date+,+price+);/System.out.println(sql);i=Dao.executeUpdate(sql);catch(Exception e)System.out.println(e.getMessage();Dao.close();return i;推薦精選/* * 查詢圖書相關(guān)信息 * */public static List selec
61、tBookInfo() List list=new ArrayList();String sql = select * from tb_bookInfo;ResultSet rs = Dao.executeQuery(sql);try while (rs.next() BookInfo bookinfo=new BookInfo();bookinfo.setISBN(rs.getString(ISBN);bookinfo.setTypeid(rs.getString(typeid);bookinfo.setBookname(rs.getString(bookname);bookinfo.set
62、Writer(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 (Exception e) 推薦精選e.printStackTrace();Dao.close();return list;public static List
63、 selectBookInfo(String ISBN) List list=new ArrayList();String sql = select * from tb_bookInfo where ISBN=+ISBN+;ResultSet rs = Dao.executeQuery(sql);try while (rs.next() BookInfo bookinfo=new BookInfo();bookinfo.setISBN(rs.getString(ISBN);bookinfo.setTypeid(rs.getString(typeid);bookinfo.setBookname(
64、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 (Exception e) 推薦精選e.printStackTrace();Dao.clo
65、se();return list;/* * 修改圖書信息方法 */更新圖書信息public static int Updatebook(String ISBN,String typeId,String bookname,String writer,String translator,String publisher,Date date,Double price)int i=0;tryString sql=update tb_bookInfo set ISBN=+ISBN+,typeId=+typeId+,bookname=+bookname+,writer=+writer+,translato
66、r=+translator+,publisher=+publisher+,date=+date+,price=+price+ where ISBN=+ISBN+;/System.out.println(sql);i=Dao.executeUpdate(sql);catch(Exception e)e.printStackTrace();Dao.close();return i;推薦精選/*/ * 刪除圖書信息方法/ */public static int Delbook(String ISBN)int i=0;tryString sql=delete from tb_bookInfo where ISBN=+ISBN+;/System.out.println(sql);i=Dao.executeUpdate(sql);catch(Exception e)e.printStackTrace();Dao.close();return i;/* * 對讀者信息表執(zhí)行的相關(guān)操作 */增加讀者信息public static int InsertReader(String name,String
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 市教育局冬季運(yùn)動(dòng)會(huì)安全工作預(yù)案
- 2024年秋季《思想道德與法治》大作業(yè)及答案3套試卷
- 2024年教師年度考核表個(gè)人工作總結(jié)(可編輯)
- 2024年xx村兩委涉案資金退還保證書
- 2024年憲法宣傳周活動(dòng)總結(jié)+在機(jī)關(guān)“弘揚(yáng)憲法精神推動(dòng)發(fā)改工作高質(zhì)量發(fā)展”專題宣講報(bào)告會(huì)上的講話
- 2024年XX村合作社年報(bào)總結(jié)
- 2024-2025年秋季第一學(xué)期初中歷史上冊教研組工作總結(jié)
- 2024年小學(xué)高級(jí)教師年終工作總結(jié)匯報(bào)
- 2024-2025年秋季第一學(xué)期初中物理上冊教研組工作總結(jié)
- 2024年xx鎮(zhèn)交通年度總結(jié)
- 2024-2025年秋季第一學(xué)期小學(xué)語文教師工作總結(jié)
- 2024年XX村陳規(guī)陋習(xí)整治報(bào)告
- 2025年學(xué)校元旦迎新盛典活動(dòng)策劃方案
- 2024年學(xué)校周邊安全隱患自查報(bào)告
- 2024年XX鎮(zhèn)農(nóng)村規(guī)劃管控述職報(bào)告