圖書管理系統(tǒng)java課程設(shè)計報告_第1頁
圖書管理系統(tǒng)java課程設(shè)計報告_第2頁
圖書管理系統(tǒng)java課程設(shè)計報告_第3頁
圖書管理系統(tǒng)java課程設(shè)計報告_第4頁
圖書管理系統(tǒng)java課程設(shè)計報告_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

焦作大學信息工程學院Java實訓報告題目:圖書管理系統(tǒng)班級:網(wǎng)絡(luò)(1)班 姓名:張輝 學號: 2011年 12 月22日沈陽工程學院課程設(shè)計報告 目錄摘 要隨著信息技術(shù)的發(fā)展,計算機已被廣泛的應(yīng)用于社會的各個領(lǐng)域,成為推動社會發(fā)展的技術(shù)動力。而在計算機應(yīng)用中,軟件的作用十分突出,軟件已經(jīng)發(fā)展成為信息技術(shù)的核心,主導(dǎo)著信息產(chǎn)品的開發(fā)和信息技術(shù)市場的進一步的開拓。軟件產(chǎn)業(yè)已成為社會信息化進程中的一個戰(zhàn)略性產(chǎn)業(yè)。在軟件技術(shù)的應(yīng)用中軟件的開發(fā)技術(shù)尤其是應(yīng)用型軟件產(chǎn)品的開發(fā)技術(shù)成了重中之重。不斷開發(fā)適應(yīng)用戶需求、市場需要的新型軟件產(chǎn)品。尤其是在校園里,各種軟件的應(yīng)用無處不在,為我們的學習和生活提供了方便。學校的圖書館不僅給我們提供看書學習的地方,還給我們提供了一套功能齊全的圖書館系統(tǒng),方便我們搜索書籍、借閱圖書。我們本次的Java課程設(shè)計的最終目標是實現(xiàn)一個圖書館管理系統(tǒng),使其具有一般圖書管理系統(tǒng)所具有的功能,可以實現(xiàn)管理員日志、管理員添加、管理員退出、讀者添加、讀者修改、讀者查詢、讀者刪除、新書入庫、書籍查詢、書籍借閱與歸還等功能。因為Java是一門很優(yōu)秀的編程語言,具有面向?qū)ο蟆⑴c平臺無關(guān)、安全、穩(wěn)定和多線程等特點,所以用Java編程為我們本次程序的編寫提供了方便。在設(shè)計中我們主要進行了數(shù)據(jù)庫及類的設(shè)計,把整系統(tǒng)分成了15個類和5個表。通過應(yīng)用awt、swing、sql、util等包,合理的添加了按鈕、菜單、文本框、文本區(qū)、表格等組件類,還包含窗口、面板等容器類,經(jīng)過設(shè)計者合理的布局,完成了窗體的設(shè)計,并通過建立JDBC-ODBC橋接器連接到Access數(shù)據(jù)庫后,向數(shù)據(jù)庫發(fā)送SQL語句實現(xiàn)程序與數(shù)據(jù)庫中表間的消息通信,從而實現(xiàn)了相應(yīng)的圖書館管理系統(tǒng)的功能。本文主要分為緒論、系統(tǒng)功能介紹、數(shù)據(jù)庫需求分析、系統(tǒng)功能實現(xiàn)、結(jié)論、致謝、參考文獻7大塊。在緒論中介紹了本次課設(shè)選題的緣由及思想。系統(tǒng)功能介紹中詳細介紹了本圖書管理系統(tǒng)的整體思想及其具體功能。在數(shù)據(jù)庫需求分析中詳細說明了數(shù)據(jù)庫的需求分析、概念設(shè)計及表的設(shè)計。在系統(tǒng)功能實現(xiàn)中主要通過抓圖來體現(xiàn)設(shè)計的結(jié)果??傊覀兊恼w設(shè)計思想均在報告中體現(xiàn)。關(guān)鍵詞: 圖書館管理系統(tǒng),Java程序設(shè)計語言,Access數(shù)據(jù)庫目 錄摘 要I第1章 緒 論1第2章 系統(tǒng)功能介紹22.1系統(tǒng)功能總框圖22.2 模塊功能介紹22.2.1 管理員模塊功能介紹22.2.2 讀者管理32.2.3書籍管理模塊功能介紹32.2.4 書籍借閱與歸還功能介紹42.2.5 借閱超時功能介紹42.3 組內(nèi)任務(wù)分工4第3章 數(shù)據(jù)庫設(shè)計53.1 數(shù)據(jù)庫需求分析53.2 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計53.3 數(shù)據(jù)庫表的設(shè)計6第4章 系統(tǒng)功能實現(xiàn)84.1 管理員模塊功能實現(xiàn)84.1.1 管理員登陸84.1.2 管理日志104.1.3 管理員添加功能實現(xiàn)114.1.4 管理員切換134.2 讀者管理模塊功能實現(xiàn)144.2.1 讀者添加144.2.2 讀者修改154.2.3 讀者查詢174.2.4 讀者刪除184.3 書籍管理模塊功能實現(xiàn)194.3.1 新書入庫實現(xiàn)194.3.2查詢功能實現(xiàn)214.4 書籍借閱與歸還功能實現(xiàn)234.4.1 借閱書籍功能實現(xiàn)234.4.2 歸還書籍功能實現(xiàn)254.5 借閱超時功能實現(xiàn)28結(jié) 論30致 謝31參考文獻32沈陽工程學院課程設(shè)計報告 第1章 緒論第1章 緒 論隨著社會經(jīng)濟的迅速發(fā)展和科學技術(shù)的全面進步,計算機事業(yè)的飛速發(fā)展,以計算機與通信技術(shù)為基礎(chǔ)的信息系統(tǒng)正處于蓬勃發(fā)展的時期。隨著經(jīng)濟文化水平的顯著提高,人們對生活質(zhì)量及工作環(huán)境的要求也越來越高。書籍做為人類的精神食糧,在現(xiàn)代社會中越來越受到重視,大量的書籍出現(xiàn)在市場上,人們有了各種各樣不同的選擇。與此同時,為了管理大量的圖書,圖書管理系統(tǒng)也大量的出現(xiàn),隨著圖書的大量增加,其管理難度也越來越大,如何優(yōu)化管理也就成為了一個大眾化的問題?,F(xiàn)已有的圖書管理系統(tǒng),其功能已十分強大,為了便于管理員對圖書管理系統(tǒng)進行妥善的管理和讀者的查詢,圖書管理系統(tǒng)為管理員提供了管理日志、管理員添加、管理員切換、讀者添加、讀者修改、讀者查詢、讀者刪除、新書入庫等功能,為讀者提供了書籍查詢、讀者借閱信息查詢、圖書網(wǎng)上續(xù)借等很多功能。大學為我們提供了自由的學習環(huán)境,使我們有更多的時間到圖書館借閱書籍,讓我們可以隨時掌握各方面的知識,不斷提高自我、充實自我,但由于圖書館藏書成千上萬,我們很難一本一本的去查找自己感興趣的書籍,因此我們會經(jīng)常用到學校為我們提供的圖書管理系統(tǒng),用時間長了便對此產(chǎn)生了興趣,正好本次課程設(shè)計為我們提供了良好的機會,讓我們親自設(shè)計并實現(xiàn)了圖書管理系統(tǒng)的部分功能。設(shè)計一個圖書管理系統(tǒng)必不可少的必須對全管書籍進行分類匯總。而這就是我們所說的數(shù)據(jù)庫設(shè)計的第一階段:需求分析。在這一階段除了對具體情況諸如實行對管理員的管理、對讀者的管理、書籍管理、書籍的借閱與歸還、借閱超時等功能的實現(xiàn),還需要對用戶的需求進行調(diào)查和分析,否則就失去了設(shè)計這個系統(tǒng)的意義了。對于界面的設(shè)計我們應(yīng)該追求的是:美觀、易讀性強、清晰度高;原則是:不能因為刻意追求美觀而以整個界面的清晰度的犧牲作為代價,不能為了清晰度而拋棄對易讀性的追求。再設(shè)計的過程中我們應(yīng)該根據(jù)實際的情況進行設(shè)計,做到具體問題具體分析,不刻意追求原則。在對應(yīng)的界面與Access數(shù)據(jù)庫建立連接,并實現(xiàn)對應(yīng)的SQL語句進行實現(xiàn)將產(chǎn)生的結(jié)果顯示出來。并運用捕捉異常的方法,將異常信息顯示出來。實現(xiàn)SQL語句的時候借助前臺開發(fā)工具中關(guān)于數(shù)據(jù)處理的控件來完成。對于讀者而言他們的需求是了解圖書的基本情況,自己的借閱情況??偠灾褪菍崿F(xiàn)對各個信息表的查詢。對于圖書管理員而言要實現(xiàn)的功能相對而言比較多,例如實現(xiàn)新書入庫、Access數(shù)據(jù)庫表的創(chuàng)建、系統(tǒng)的維護等等,這些都需要設(shè)計和實現(xiàn)的。0沈陽工程學院課程設(shè)計報告 第2章 系統(tǒng)功能介紹第2章 系統(tǒng)功能介紹2.1系統(tǒng)功能總框圖 圖書館管理系統(tǒng)功能總框圖,如圖2-1所示。圖書館管理系統(tǒng)管理員讀者管理書籍管理書籍借閱歸還管理員管理日志管理員添加管理員切換讀者添加讀者信息修改讀者刪除新書入庫書籍查詢借閱書籍歸還書籍借閱超時讀者信息查詢圖2-1 系統(tǒng)功能框架圖2.2 模塊功能介紹2.2.1 管理員模塊功能介紹1. 管理員登陸此模塊主要是利用MenuBar添加菜單條,利用Menu和MenuItem添加菜單和菜單的各個參數(shù),通過事件ActionEvent 可以實現(xiàn)進入各個模塊如管理日志、管理員添加、管理員切換、讀者添加、讀者修改、讀者查詢、讀者刪除、新書入庫、書籍查詢、借閱書籍、歸還書籍、借閱超時及退出的功能。2. 管理日志此模塊可以清楚的顯示出書籍借閱與歸還的信息,包括書號、書名、圖書證號、借/還、操作日期、已付款額。讀者可以通過此模塊實現(xiàn)的功能清楚的了解圖書被借閱和歸還的詳細信息,從而給讀者帶來了很多方便。3. 管理員添加功能介紹此模塊功能是增加新管理員的登陸帳戶。在圖書館管理系統(tǒng)中必須有每一個管理者的帳戶讓其可以正常進行新圖書證的辦理、借閱書籍和歸還書籍等系統(tǒng)管理。所以在管理員功能模塊中增加了管理員添加這個功能。4. 管理員切換此模塊的主要功能是進行管理員之間的切換,即單擊管理員菜單下的管理員切換,就會退出當前管理員界面,從而出現(xiàn)管理員切換窗口,而另一管理員就可以在管理員切換窗口中的用戶名和密碼兩欄中通過輸入自己的用戶名和密碼直接進入該系統(tǒng)。2.2.2 讀者管理1. 讀者添加此模塊主要的實現(xiàn)功能是添加新的讀者信息,即當有新的讀者要看查看本圖書館中的書藉,可以通過此功能實現(xiàn),當數(shù)據(jù)庫中存在其新信息,即成為本圖書館的新一位讀者。其中信息分別包括圖書證號、學生姓名、性別、系別、班級,同時可有三項功能在此處實現(xiàn),即添加、重置以及返回。2.讀者修改此模塊主要的實現(xiàn)功能對有信息更新的讀者進行即時修改,以隨時更新讀者在數(shù)據(jù)庫中的信息。本模塊通過圖書證號確定讀者,可對讀者信息的新圖書證號、學短姓名、性別、系別、班級。此處可分別實現(xiàn)對該功能的修改、重置、返回。3. 讀者查詢此模塊主要可對所要了解的讀者信息。即把讀者的信息從數(shù)據(jù)庫調(diào)出來,顯示在該窗口中的文字區(qū)域。查詢方式分別有按圖書證查詢、按姓名查詢、按班級查詢、按年級查詢,并可通過辦理入相應(yīng)的關(guān)鍵字,更加縮小查詢范圍。此處可實現(xiàn)查詢和返回功能。4. 讀者刪除此模塊可以刪除一些不再使用本系統(tǒng)的讀者資料,從而達到對數(shù)據(jù)庫中的清理,即清除一些不必要資料,此處有四種刪除途徑,分別為按圖書證號刪除、按姓名刪除、按班級刪除、安年級刪除,并可通過所輸入的關(guān)鍵字盡快找到所要刪除的資料。此處可分別實現(xiàn)對該功能的修改、重置、返回。2.2.3書籍管理模塊功能介紹1. 新書入庫功能介紹此模塊主要的實現(xiàn)功能是將新來的圖書輸入到圖書館管理系統(tǒng)的書庫當中,其中主要按如下信息往書庫中輸入,這部分的操作主要是便于書庫合理的管理,有利于讀者能夠?qū)π聲幸粋€更詳細的了解。其中包括如下信息:新書書號、新書名稱、新書出版日期、新書出版社、入庫數(shù)量、編寫作者、新書單價。2. 書籍查詢功能介紹在圖書館管理系統(tǒng)中書籍查詢是最基本的功能,讀者可以根據(jù)自己的需求來查詢想要借閱的書籍。本系統(tǒng)是用Java應(yīng)用程序和Access數(shù)據(jù)庫一起開發(fā)的其中利用Java來編程實現(xiàn)功能的代碼和布置運行界面。界面是由檢索項、檢索詞和顯示文本區(qū)三個部分組成的用戶根據(jù)自己的需要在檢索項中選擇自己所要按什么字段進行查詢,其中書籍查詢功能的檢索項中可以按書號查詢、按書名查詢、按作者名查詢、按出版社查詢、按入庫時間查詢等基礎(chǔ)查詢。選擇檢索項后用戶只要在檢索詞中添寫自己所要查詢的內(nèi)容并確定鍵確認后用戶要查詢的內(nèi)容就可以在顯示文本區(qū)中顯示出來。用戶可以根據(jù)顯示的信息得知自己所要借閱書籍的情況。2.2.4 書籍借閱與歸還功能介紹1. 借閱書籍功能介紹此模塊主要實現(xiàn)讀者可憑有效的圖書證號,借閱圖書館內(nèi)未借出的圖書。輸入圖書證號后,可顯示了該圖書證持有者的全部信息(包括借書證號、姓名、性別、所在班級、所屬系部、當前可借閱圖書個數(shù)),供讀者確認信息。通過輸入有效的圖書編號,查詢該圖書的全部信息(包括書號、書名、作者、出版社、是否借出、價格)。借閱成功后,將該圖書證號、書號、借閱日期、應(yīng)還日期信息插入到數(shù)據(jù)庫的表中進行記錄。2. 歸還書籍功能介紹此模塊主要實現(xiàn)讀者憑所要歸還圖書的圖書證號歸還圖書。輸入所要歸還的圖書編號后,可顯示了該圖書證持有者的全部信息(包括借書證號、姓名、性別、所在班級、所屬系部、當前可借閱圖書個數(shù)),供讀者確認信息。還書成功后,從數(shù)據(jù)庫中刪除該書的借出記錄,并修改數(shù)據(jù)庫中的相應(yīng)信息。2.2.5 借閱超時功能介紹此模塊主要實現(xiàn)顯示過期圖書的信息(包括圖書證號、書號、借閱日期、應(yīng)還日期)提醒讀者還書。2.3 組內(nèi)任務(wù)分工組內(nèi)分工情況如下表2-1所示。表2-1 組內(nèi)分工情況表組長鄒剛讀者添加、查詢、修改、刪除。7組員羅姍姍書籍借閱與歸還模塊、借書超期限子系統(tǒng)。李呈呈管理員添加、新書入庫、按指定條件進行圖書查詢。劉蘭蘭數(shù)據(jù)庫創(chuàng)建、登陸界面設(shè)計、管理員模塊。沈陽工程學院課程設(shè)計報告 第3章 數(shù)據(jù)庫設(shè)計第3章 數(shù)據(jù)庫設(shè)計在此圖書館管理系統(tǒng)中,使用到了一個重要的連接,即與數(shù)據(jù)庫Accesss相連。數(shù)據(jù)庫中存有圖書館中所信息,包括讀者信息、管理員資料、借閱與退還記錄。所有與管理有關(guān)的數(shù)據(jù)皆在其中,是保證系統(tǒng)能夠正常實現(xiàn)各種功能的一架橋。3.1 數(shù)據(jù)庫需求分析 Admi表,即管理員表,記錄了用戶名和密碼。 Admirz表,即管理日志表,記錄了書號、書名、圖書證號、借/還、操作日期、已付款額。 book表,即圖書表,記錄了書號、書名、作者、出版社、入庫時間、是否借出、價格。 borrowbook表,即借閱表,記錄了圖書證號、書號、借閱日期、應(yīng)還日期。 person表,即讀者表,記錄了圖書證號、姓名、性別、系別、班級。3.2 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計圖書館管理系統(tǒng)E-R圖,如圖3-1。mn讀者圖書管理員性別系別班級姓名圖書證號書號書名作者出版社會化密碼用戶名管理管理mnm借閱1入庫時間是否借出價格圖3-1 圖書館管理系統(tǒng)E-R圖3.3 數(shù)據(jù)庫表的設(shè)計Admi表表中記錄了可以使管理員進入該系統(tǒng)的用戶名及密碼,如表3-1所示。表3-1 管理員信息表字段名稱數(shù)據(jù)類型長 度備 注用戶名文 本10密 碼文 本15Admirz表表中記錄借還書日志,用于存下所有對圖書操作的記錄,以便以后可以翻閱和查找,如表3-2所示。表3-2 管理日志表字段名稱數(shù)據(jù)類型長 度備 注書號文 本10書名文 本15作者文 本15出版社文 本15入庫時間DATE15已付款額文 本10book表表中記錄了庫內(nèi)所有圖書的所有資料,如表3-3。表3-3 圖書表字段名稱數(shù)據(jù)類型長 度備 注書號文 本10書名文 本15作者文 本15出版社文 本15入庫時間DATE15是否借出文 本10價格文 本10person表表中記錄庫中所有讀者的相關(guān)信息,如表3-4所示。表3-4 讀者表字段名稱數(shù)據(jù)類型長 度備 注圖書證號文 本10姓名文 本15性別文 本15系別文 本15班級文 本15borrowbook表表內(nèi)記錄了此時圖書的借閱情況,如表3-5所示。表3-5 借閱表字段名稱數(shù)據(jù)類型長 度備 注圖書證號文 本10書號文 本15借閱日期DATE15應(yīng)還日期DATE15沈陽工程學院課程設(shè)計報告 第4章 系統(tǒng)功能實現(xiàn)第4章 系統(tǒng)功能實現(xiàn)4.1 管理員模塊功能實現(xiàn)4.1.1 管理員登陸此模塊是整個系統(tǒng)最主要的部分,管理員可以通過此模塊實現(xiàn)進入其余各個模塊如管理日志、管理員添加、管理員切換、讀者添加、讀者修改、讀者查詢、讀者刪除、新書入庫、書籍查詢、借閱書籍、歸還書籍、借閱超時及退出的功能。圖書管理系統(tǒng)管理員界面如圖4-1所示。圖4-1 圖書管理系統(tǒng)管理員主要程序代碼如下:public void actionPerformed(ActionEvent e) if(e.getSource()=itemAdmiqh)this.dispose();In winin=new In(系統(tǒng)登陸);if(e.getSource()=itemtc)System.exit(0);if(e.getSource()=itemAdmixj)CreatAdmi creatAdmi=new CreatAdmi(管理員添加);if(e.getSource()=itemAdmirz)WinTable wintable=new WinTable(管理日志);if(e.getSource()=itemBookrk)AddInfy addInfy=new AddInfy();if(e.getSource()=itemPersonlr)Winpersonadd winperson=new Winpersonadd(讀者添加);if(e.getSource()=itemPersoncx)Winpersonsearch winperson=new Winpersonsearch(讀者信息查詢);if(e.getSource()=itemPersonxg)Winpersonmodify winperson=new Winpersonmodify(讀者信息修改);if(e.getSource()=itemPersonsc)Winpersondelete winperson=new Winpersondelete(讀者刪除);if(e.getSource()=itemBookcx)Windowjj ok=new Windowjj();if(e.getSource()=itemchaoshi)day win=new day(); if(e.getSource()=itemBorrowjs)Borrowbook win=new Borrowbook(); if(e.getSource()=itemBorrowhs)Returnbook win=new Returnbook(); 4.1.2 管理日志此模塊通過定義類WinTable繼承頂層容器JFrame,再添加普通容器 JScrollPane、Jpanel,然后通過BorderLayout布局創(chuàng)建界面,最后主要通過數(shù)組利用while循環(huán)在連接好的數(shù)據(jù)庫中查找表Admirz中的內(nèi)容,從而實現(xiàn)了可以清楚的顯示出書籍借閱與歸還信息的功能。管理日志界面如圖4-2所示。圖4-2 管理日志主要程序代碼如下:WinTable(String s)super(s);try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);catch(ClassNotFoundException e)System.out.println(+e);try con=DriverManager.getConnection(jdbc:odbc:sun,123,123);sql=con.createStatement();rs=sql.executeQuery(SELECT * FROM Admirz);while(rs.next()k+;catch(SQLException e)System.out.println(+e);try con=DriverManager.getConnection(jdbc:odbc:sun,123,123);sql=con.createStatement();rs=sql.executeQuery(SELECT * FROM Admirz);a=new Objectk6;while(rs.next()for(int j=0;j6;j+)if(j5)aij=rs.getString(j+1);elseaij=rs.getDouble(j+1);i+;con.close();catch(SQLException e)System.out.println(+e);table=new JTable(a,name);Container con=getContentPane();getContentPane().add(new JScrollPane(table),BorderLayout.CENTER);setBounds(120,125,700,500);setVisible(true);validate();addWindowListener(new DisposeListener();4.1.3 管理員添加功能實現(xiàn)功能介紹:該程序主要實現(xiàn)管理員的添加,以便于讓實行對圖書管理員的管理。按照標簽提示輸入信息,然后點擊確定按鈕。首先判斷管理員名文本框中輸入的文本信息是否符合大于3個字符并小于10個字符的規(guī)則,如果不符合規(guī)則,則提示錯誤,如果符合規(guī)則,再到Admi表中進行查詢,如果相同則用提示框提示錯誤。若無相同則可注冊。但還需要保證前后兩次的密碼相同,才能成功注冊,管理員登陸窗口如圖4-3所示。圖4-3 管理員添加成功界面主要程序代碼如下: public void actionPerformed(ActionEvent c)String b=textUser.getText();String d=textPassword1.getText();String g=textPassword2.getText();if(c.getSource()=buttonqk)textUser.setText(null);textPassword1.setText(null);textPassword2.setText(null);if(c.getSource()=buttonEnter|c.getSource()=textPassword2)if(b.length()10)JOptionPane.showMessageDialog(null,用戶名應(yīng)在310個字符之間);textUser.setText(null);elsetry Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);catch(ClassNotFoundException e)System.out.println(+e);try con=DriverManager.getConnection(jdbc:odbc:sun,123,123);sql=con.createStatement();rs=sql.executeQuery(SELECT * FROM Admi WHERE 用戶名=+b+);if(rs.next()String user=rs.getString(1);if(b.equals(user) JOptionPane.showMessageDialog(null,此管理員已被注冊,警告,JOptionPane.WARNING_MESSAGE);elseif(d.equals(g) sql.executeUpdate(INSERTINTOAdmi VALUES+(+b+,+d+);this.dispose();JOptionPane.showMessageDialog(null,管理員注冊成功); else JOptionPane.showMessageDialog(null,兩次輸入密碼不一致,警告,JOptionPane.ERROR_MESSAGE); con.close(); catch(SQLException e)System.out.println(+e);4.1.4 管理員切換此模塊功能是退出當前管理員界面,進入管理員切換窗口,另一用戶可以通過輸入自己的用戶名和密碼直接進入該系統(tǒng)。但此用戶名和密碼都必須與已經(jīng)連接好的數(shù)據(jù)庫中表Admi中的用戶名和密碼相吻合。管理員切換界面如圖4-4所示。圖4-4 管理員切換主要程序代碼如下:public void windowClosing(WindowEvent e)e.getWindow().dispose();4.2 讀者管理模塊功能實現(xiàn)4.2.1 讀者添加功能介紹:添加新的讀者,使其能夠進入圖書系統(tǒng)閱覽圖書,讀者添加如圖4-5所示。 圖4-5 讀者添加主要程序代碼如下: public void actionPerformed(ActionEvent e)if(e.getSource()=button1) / 添加String ch=text1.getText();if(ch.length()!=5)JOptionPane.showMessageDialog(null,請輸入5位圖書證號!);text1.setText(null);else/連接數(shù)據(jù)庫String number,name,sex,dept,classes,record,insertStr;number=text1.getText();name=text2.getText();if(box1.getState()=true)sex=box1.getLabel();elsesex=box2.getLabel();dept=text3.getText();classes=text4.getText();rs=sql.executeQuery(SELECT * FROM person WHERE 圖書證號=+number+);if(rs.next()JOptionPane.showMessageDialog(null,此圖書證號已存在,警告,JOptionPane.WARNING_MESSAGE);text1.setText(null);record=(+number+,+name+,+sex+,+dept+,+classes+);insertStr=INSERT INTO person VALUES+record;sql.executeUpdate(insertStr); JOptionPane.showMessageDialog(null,添加成功!);con.close();4.2.2 讀者修改功能介紹:對讀者需要修改的資料進行重定義,讀者信息修改如圖4-6所示。圖4-6 讀者信息修改主要程序代碼如下:public void actionPerformed(ActionEvent e) if(e.getSource()=button1) /修改String ch=text1.getText();if(ch.length()!=5)JOptionPane.showMessageDialog(null,請輸入5位圖書證號!);text1.setText(null);elsetry/連接數(shù)據(jù)庫String number,name,sex,dept,classes,newnum,record,updateStr;newnum=text5.getText();number=text1.getText();name=text2.getText();if(box1.getState()=true)sex=box1.getLabel();elsesex=box2.getLabel();dept=text3.getText();classes=text4.getText();sql=con.createStatement();rs=sql.executeQuery(SELECT * FROM person where 圖書證號=+newnum+);if(rs.next()rs1=sql.executeQuery(SELECT * FROM person where 圖書證號=+number+);if(rs1.next()JOptionPane.showMessageDialog(null,此圖書證號已存在,警告,JOptionPane.WARNING_MESSAGE);text1.setText(null);elseupdateStr=UPDATE person SET 圖書證號=+number+,+姓名=+name+,+性別=+sex+,+系別=+dept+,+班級=+classes+WHERE 圖書證號=+newnum+;sql.executeUpdate(updateStr);JOptionPane.showMessageDialog(null,修改成功!);elseJOptionPane.showMessageDialog(null,查無此人!);/連接數(shù)據(jù)庫con.close();4.2.3 讀者查詢功能介紹:可以對數(shù)據(jù)庫中已有的讀者信息進行查詢。讀者查詢?nèi)鐖D4-7。圖4-7讀者信息查詢主要程序代碼如下:public void actionPerformed(ActionEvent e) if(e.getSource()=button1 | e.getSource()=text) / 查詢area.setText(null);if(str=按圖書證號查詢 | str=null) & text.getText()!=null)boolean flag=true,f=true;String num=text.getText();/連接數(shù)據(jù)庫rs=sql.executeQuery(SELECT * FROM person where 圖書證號=+num+); while(rs.next()f=false;String number=rs.getString(圖書證號);String name=rs.getString(姓名);String sex=rs.getString(性別);String dept=rs.getString(系別);String classes=rs.getString(班級);if(flag)area.append(圖書證號為+num+的學生信息如下:);flag=false;area.append(n姓名:+name+ 性別:+sex+ 系別:+dept+ 班級:+classes+n);if(f)area.append(查無此人!);catch(SQLException c)System.out.println(c);4.2.4 讀者刪除功能介紹:刪除數(shù)據(jù)庫中已有信息。讀者刪除如圖4-8所示。圖4-8 讀者刪除主要程序代碼如下:if(e.getSource()=button1) / 刪除area.setText(null);if(str=按圖書證號刪除 | str=null) & text.getText()!=null) String num=text.getText();tryClass.forName(sun.jdbc.odbc.JdbcOdbcDriver);catch(ClassNotFoundException c)System.out.println(+c);/連接數(shù)據(jù)庫rs=sql.executeQuery(SELECT * FROM person where 圖書證號=+num+);if(rs.next()area.append(該信息已刪除!);String delStr=DELETE FROM person WHERE 圖書證號=+num+;sql.executeQuery(delStr);con.close();catch(SQLException c)System.out.println(c);4.3 書籍管理模塊功能實現(xiàn)4.3.1 新書入庫實現(xiàn)功能介紹:此界面主要完成的功能是往數(shù)據(jù)庫book表中添加新書的記錄,在book表中可查看最新的記錄。在新書信息輸入的過程中,會出現(xiàn)一些異常處理,如某個字段的信息沒有填寫;新書信息輸入字段的過程中,輸入的字段類型與給定的字段類型與輸入不匹配(如:貨幣、日期);輸入的信息長度超過給定的字段長度等。如果填寫的內(nèi)容正確則可以成功將新書添加入庫,新書入庫窗口如圖4-9所示。 圖4-9添加新書入庫界面主要程序代碼如下: public void actionPerformed(ActionEvent c) if (c.getSource()=button2)this.dispose();if (c.getSource()=button1)/連接數(shù)據(jù)庫rs=stm.executeQuery(select 書號 from book where 書號= +textField1.getText() + );if (rs.next()JOptionPane.showMessageDialog(null, 此書號已存在!, 警告,JOptionPane.WARNING_MESSAGE);return;float m;String str1,str2,str3,str4,str6,str7,str8,str9,str10;str1=textField1.getText(); str10=未借出;m=Float.parseFloat(str9); str=(+str1+,+str3+,+str8+,+str6+,+str7+,+str10+,+m+);String insert=INSERT INTO book(書號,書名,作者,出版社,入庫時間,是否借出,價格) VALUES+str;stm.executeUpdate(insert);textField1.setText();JOptionPane.showMessageDialog(null, 增加信息成功!);con.close();catch (Exception e)JOptionPane.showMessageDialog(null, 請認真檢查各項!然后重試., 異常警告, JOptionPane.WARNING_MESSAGE); 4.3.2查詢功能實現(xiàn)功能介紹:本系統(tǒng)包含兩項一是檢索項令一個是檢索詞,在檢索項中用戶可以根據(jù)自己的需求來選擇所要查詢的項目并在檢索詞中添寫自己所要查詢的內(nèi)容。本系統(tǒng)副帶四個按鈕:確定、取消、查看全庫,該圖書館管理系統(tǒng)的查詢界面如圖4-10所示。圖4-10 查詢系統(tǒng)界面在該系統(tǒng)中為了用戶使用方便還設(shè)有查看全庫一項,用戶可以通過這一功能來查看全庫的圖書,所查詢的內(nèi)容將在下方的文本區(qū)中顯示,其界面4-11所示。圖4-11 查看全庫信息23使用檢索詞必須得滿足一定的查詢條件才可以執(zhí)行,用戶必須得在檢索項中選擇查詢方式并添好檢索詞才可查詢否則系統(tǒng)會顯示未找到您要查找的內(nèi)容并給以提示,如圖4-12所示。圖4-12 檢索項按書號查詢主要程序代碼如下:public void itemStateChanged(ItemEvent e) area.setText(null) ; String n

溫馨提示

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

評論

0/150

提交評論