圖書管理系統(tǒng)項目系統(tǒng)編程文檔_第1頁
圖書管理系統(tǒng)項目系統(tǒng)編程文檔_第2頁
圖書管理系統(tǒng)項目系統(tǒng)編程文檔_第3頁
圖書管理系統(tǒng)項目系統(tǒng)編程文檔_第4頁
圖書管理系統(tǒng)項目系統(tǒng)編程文檔_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、圖書管理系統(tǒng)項目系統(tǒng)編程文檔題目: 圖書管理系統(tǒng) 班級: 08信息管理與信息系統(tǒng)本科班 姓名: 指導(dǎo)老師: 2009年12月28日版 本 歷 史版本/狀態(tài)作者參與者起止日期備注版本1祝靈葉祝靈葉、同學(xué)幫助加老師指導(dǎo)2009-12-102009-12-18完成基本界面的設(shè)置,實現(xiàn)不同身份登陸不同界面,能夠進(jìn)行不同的操作版本2祝靈葉祝靈葉、同學(xué)幫助加老師指導(dǎo)2008-12-202009-12-24實現(xiàn)了各個按鈕的監(jiān)聽及頁面的跳轉(zhuǎn)版本3祝靈葉祝靈葉、同學(xué)幫助加老師指導(dǎo)2009-12-252010-12-28連接上了數(shù)據(jù)庫,實現(xiàn)了增刪改查基本功能,并且實現(xiàn)了界面的整體美化效果一、需求分析1.開發(fā)背景和

2、意義圖書管理是高校內(nèi)每一個系部或院部都必須切實面對的工作,但一直以來人們使用傳統(tǒng)的人工方式管理圖書資料。這種方式存在著許多缺點,如效率低、保密性差且較為繁瑣。另外,隨著圖書資料數(shù)量的增加,其工作量也將大大增加,這必將增加圖書資料管理者的工作量和勞動強(qiáng)度,這將給圖書資料信息的查找、更新和維護(hù)都帶來了很多困難。經(jīng)過詳細(xì)的調(diào)查,目前我國各類高等學(xué)校中有相當(dāng)一部分單位圖書資料管理還停留在人工管理的基礎(chǔ)上。這樣的管理機(jī)制已經(jīng)不能適應(yīng)時代的發(fā)展,其管理方法將浪費許多人力和物力。隨著科學(xué)技術(shù)的不斷提高,這種傳統(tǒng)的手工管理方法必然被以計算機(jī)為基礎(chǔ)的信息管理方法所取代。圖書管理作為計算機(jī)應(yīng)用的一個分支,有著手工

3、管理無法比擬的優(yōu)點,如檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高圖書管理的效率。因此,開發(fā)一套能夠為用戶提供充足的信息和快捷的查詢手段的圖書管理系統(tǒng),將是非常必要的,也是十分及時的。2.系統(tǒng)需求概況2.1任務(wù)概述經(jīng)過對我校圖書館詳細(xì)調(diào)查,加深了對現(xiàn)行圖書管理業(yè)務(wù)的深刻了解,與此同時,將整個圖書管理系統(tǒng)的業(yè)務(wù)流程抽象描述如下:1、新的圖書購進(jìn)后,管理員對其分門別類地進(jìn)行匯總、編號、上架,以備學(xué)生借閱。2、舊的圖書需要撤架,管理員對其信息刪除,以備館藏。3、如有圖書信息需要修改,管理員可以修改其相應(yīng)的信息。4、管理員可以對有權(quán)借閱書籍的同學(xué)進(jìn)行增加和

4、刪除。5、學(xué)生如需借書,則應(yīng)在其借閱表上進(jìn)行相應(yīng)的登記。6、學(xué)生可以在一定的條件下續(xù)借一定的書籍。7、學(xué)生借閱圖書后,應(yīng)及時歸還,并在借閱表中刪除相應(yīng)的借閱信息。2.2 功能需求以下是圖書管理系統(tǒng)必須具備的功能:1.新進(jìn)圖書的登記功能:對于購進(jìn)的新書,系統(tǒng)必須具備圖書信息資料(編號、書名、圖書類型、出版社、作者、定價)的錄入功能。2.圖書的查詢修改功能:當(dāng)圖書資料發(fā)生變化,如圖書丟失或有錯誤信息輸入時,則應(yīng)能夠及時對數(shù)據(jù)進(jìn)行修改和補(bǔ)充。3.圖書的刪除功能:當(dāng)一部分圖書因受損嚴(yán)重時,需要對其信息刪除并進(jìn)行館藏。3.借閱的登記、續(xù)借的登記及歸還的登記功能:系統(tǒng)的主要功能之一,供本校學(xué)生借閱圖書、續(xù)

5、借圖書和歸還圖書,并進(jìn)行登記。4.學(xué)生信息的增加、刪除和修改功能:系統(tǒng)主要功能之一,建立學(xué)生信息,并對其進(jìn)行維護(hù)。2.3性能需求為了保證系統(tǒng)能夠長期、安全、穩(wěn)定、可靠、高效的運行,圖書管理系統(tǒng)應(yīng)該滿足以下的性能需求:1、系統(tǒng)處理的準(zhǔn)確性和及時性系統(tǒng)處理的準(zhǔn)確性和及時性是系統(tǒng)的必要性能。在系統(tǒng)設(shè)計和開發(fā)過程中,要充分考慮系統(tǒng)當(dāng)前和將來可能承受的工作量,使系統(tǒng)的處理能力和響應(yīng)時間能夠滿足學(xué)校對信息處理的需求。2、系統(tǒng)的開放性和系統(tǒng)的可擴(kuò)充性圖書管理系統(tǒng)在開發(fā)過程中,應(yīng)該充分考慮以后的可擴(kuò)充性。例如用戶查詢的需求也會不斷的更新和完善。所有這些,都要求系統(tǒng)提供足夠的手段進(jìn)行功能的調(diào)整和擴(kuò)充。而要實現(xiàn)這

6、一點,應(yīng)通過系統(tǒng)的開放性來完成,即系統(tǒng)應(yīng)是一個開放系統(tǒng),只要符合一定的規(guī)范,可以簡單的加入和減少系統(tǒng)的模塊,配置系統(tǒng)的硬件。通過軟件的修補(bǔ)、替換完成系統(tǒng)的升級和更新?lián)Q代。3、系統(tǒng)的易用性和易維護(hù)性圖書管理系統(tǒng)是直接面對使用人員的,而使用人員往往對計算機(jī)并不時非常熟悉。這就要求系統(tǒng)能夠提供良好的用戶接口,易用的人機(jī)交互界面。要實現(xiàn)這一點,就要求系統(tǒng)應(yīng)該盡量使用用戶熟悉的術(shù)語和中文信息的界面;針對用戶可能出現(xiàn)的使用問題,要提供足夠的在線幫助,縮短用戶對系統(tǒng)熟悉的過程。4、系統(tǒng)的標(biāo)準(zhǔn)性系統(tǒng)在設(shè)計開發(fā)使用過程中都要涉及到很多計算機(jī)硬件、軟件。所有這些都要符合主流國際、國家和行業(yè)標(biāo)準(zhǔn)。針對新的業(yè)務(wù)流程,

7、現(xiàn)具體描述其功能如下:1.用戶登錄:系統(tǒng)對用戶合法性進(jìn)行檢查,并適合不同身份的人員進(jìn)行登錄。2.圖書入庫:對新購進(jìn)的圖書分類進(jìn)行編號,并把圖書基本信息錄入計算機(jī)。3.圖書撤架:舊的圖書需要撤架,管理員對其信息刪除,以備館藏。4.圖書信息的修改:如有圖書信息需要修改,管理員可以修改其相應(yīng)的信息。4.學(xué)生權(quán)限的修改:管理員可以對有權(quán)借閱書籍的同學(xué)進(jìn)行增加和刪除。5.圖書借閱:對已入庫的圖書,學(xué)生可以借閱,并進(jìn)行登記。6.圖書續(xù)借:對學(xué)生續(xù)借的圖書進(jìn)行登記。7.圖書歸還:對學(xué)生已歸還的圖書進(jìn)行相應(yīng)的歸還登記。 8.信息查詢:即對所有圖書的借閱情況,或?qū)W生的基本情況和借閱情況進(jìn)行查詢。二、概念結(jié)構(gòu)設(shè)計

8、類型讀者讀者編號讀者姓名圖書借閱密碼家庭住址性別圖書編號圖書名稱圖書名稱出生年月出版社名圖書作者圖書編號讀者編號讀者姓名聯(lián)系電話借書量是否歸還價格入庫量三、邏輯結(jié)構(gòu)設(shè)計轉(zhuǎn)換的原則將實體轉(zhuǎn)換成一個單個的表,實體的屬性轉(zhuǎn)換成關(guān)系的屬性如果是多對多的話,一定要把它轉(zhuǎn)換一個單獨的關(guān)系,關(guān)系的屬性是兩端實體的碼和自身所帶的屬性組成如果是一對多,則把它的任意一端合并到n端去如果是一對一則合并任意段即可將圖書管理系統(tǒng)的e-r圖轉(zhuǎn)換為關(guān)系數(shù)據(jù)庫的數(shù)據(jù)模型,其關(guān)系模式為(其中加下劃線的屬性為主碼):管理員信息表(編號、姓名、性別、出生年月、聯(lián)系電話、家庭住址、密碼);讀者信息表(讀者編號、讀者姓名、性別、出生年

9、月、聯(lián)系電話、家庭住址、密碼、借書量);圖書(圖書編號、圖書名稱、圖書作者、出版社名、定價、入庫量、類別、內(nèi)容簡介、是否借出);借閱信息表(讀者編號、圖書編號、讀者姓名、圖書名稱、是否歸還);四、物理結(jié)構(gòu)設(shè)計與實現(xiàn)(1)結(jié)構(gòu)設(shè)計 物理結(jié)構(gòu)主要是指數(shù)據(jù)庫的存儲記錄格式、存儲記錄的安排和存取方法。表結(jié)構(gòu)設(shè)計:(各表字段名、類型長度、空否、說明)讀者信息表字段名數(shù)據(jù)類型可否為空說明uidchar(10)否讀者編號【主鍵】unamechar(10)否讀者姓名usexchar(10)否讀者性別birthdaychar(10)可空出生年月phonechar(15)可空聯(lián)系電話addressvarchar(

10、50)可空家庭住址passwordchar(10)否密碼sumbookchar(10)可空借書量圖書信息表字段名數(shù)據(jù)類型可否為空說明idchar(10)否圖書編號【主鍵】namechar(30)否圖書名稱authorchar(10)可空圖書作者publisherchar(30)可空出版社名pricechar(10)可空定價sumchar(10)可空入庫量sortchar(10)可空類別previewchar(50)可空內(nèi)容簡介借閱信息表字段名數(shù)據(jù)類型可否為空說明uidchar(10)否讀者編號【主鍵】unamechar(10)可空讀者姓名idchar(10)否圖書編號【主鍵】namechar(

11、20)可空圖書名稱obkeepchar(10)否是否歸還管理員信息表字段名數(shù)據(jù)類型可否為空說明idchar(10)否編號namechar(10)否姓名sexchar(10)否性別birthdaychar(10)可空出生年月phonechar(15)可空聯(lián)系電話addressvarchar(50)可空家庭住址passwordchar(10)否密碼(2)建立數(shù)據(jù)庫1建立數(shù)據(jù)庫及其表(主要敘述如何建立)通過企業(yè)管理器,在圖書管理系統(tǒng)數(shù)據(jù)庫的圖書、讀者、管理員和借閱4張表中各輸入相應(yīng)條數(shù)的紀(jì)錄。同時滿足數(shù)據(jù)的約束要求和表間關(guān)聯(lián)的紀(jì)錄。以實現(xiàn)對圖書管理系統(tǒng)數(shù)據(jù)庫的圖書、讀者、和借閱3張表中數(shù)據(jù)的插入、刪

12、除和修改操作。2.創(chuàng)建約束、默認(rèn)和規(guī)則通過對表結(jié)構(gòu)的設(shè)計,對圖書管理系統(tǒng)數(shù)據(jù)庫的圖書、讀者和借閱3張表內(nèi)的屬性進(jìn)行恰當(dāng)?shù)耐暾约s束、默認(rèn)和規(guī)則。以達(dá)到列級完整性的約束條件。二、功能描述1. 登錄模塊程序名稱圖書管理系統(tǒng)功能描述實現(xiàn)了圖書管理系統(tǒng)的登錄界面,包括學(xué)生和管理員不同身份實現(xiàn)功能的主界面。開發(fā)者祝靈葉起止日期2009-12-102009-12-131. 登陸界面: 2. 學(xué)生功能的主界面: 3. 管理員功能的主界面: 4.在實現(xiàn)不同用戶身份登錄的時候,由于不會設(shè)約束,就直接從兩張表里查詢實現(xiàn)登錄。核心的sql語句如下: conndb db = conndb.createinstance

13、();string sql1; system.out.println(tfusername.gettext()+tfpassword.gettext();try sql1 = select * from users where uid=? and password=?;db.setps(sql1);db.getps().setstring(1, tfusername.gettext();db.getps().setstring(2, tfpassword.gettext();db.setrs(db.getps().executequery();string sql2 = select * fr

14、om manager where id=? and password=?;db.setps(sql2);db.getps().setstring(1, tfusername.gettext();db.getps().setstring(2, tfpassword.gettext();resultset rs = db.getps().executequery();if(db.getrs().next()/成功登錄后,顯示讀者界面login.this.setvisible(false);login.this.dispose();new readers(圖書管理系統(tǒng));else if(rs.nex

15、t() /成功登錄后,顯示管理員界面 login.this.setvisible(false); login.this.dispose(); new manager(圖書管理系統(tǒng));elsejoptionpane.showoptiondialog(login.this,用戶名或密碼有誤,請重新輸入!,登錄錯誤, joptionpane.default_option, joptionpane.information_message,null, null, null); catch (sqlexception e1) e1.printstacktrace();問題1:不知道怎么實現(xiàn)不同的身份登錄不

16、同的界面。對策:在連接數(shù)據(jù)庫的表中,設(shè)置兩張表,使用不同的sql語句進(jìn)行查詢,從而實現(xiàn)了不同身份用戶的登錄。在一開始的時候,我把不同用戶的登錄想的比較簡單,以為只是在數(shù)據(jù)庫里設(shè)置一種約束就行,但事實并非如此,這種約束并不是那么好設(shè)。最后,我選擇了通過在數(shù)據(jù)庫中調(diào)用兩張表實現(xiàn)了此功能。啟發(fā):做事不能鉆牛角尖,要學(xué)會變通,要學(xué)會知識的靈活掌握,不拘泥于課本,一切知識要源于課本并且高于課本。2. 增加功能模塊程序名稱圖書管理系統(tǒng)功能描述實現(xiàn)了讀者和圖書的增加功能開發(fā)者祝靈葉起止日期2008-12-132009-12-151.新書入庫的界面:實現(xiàn)監(jiān)聽的核心代碼如下:btnsubmit.addactio

17、nlistener(new actionlistener()public void actionperformed(actionevent e) /如果以上驗證均通過則開始添加新數(shù)據(jù)int num = 0;conndb db = conndb.createinstance();string id = txtid.gettext();string name = txtname.gettext();string author = txtauthor.gettext();string publisher = txtpublisher.gettext();string price = txtprice

18、.gettext();string sum = txtsum.gettext();string cbsort = (string)cbsort.getselecteditem();system.out.println(cbsort);string preview = txtpreview.gettext();string sql = insert into books values (+id+,+name+,+author+,+publisher+,+price+,+sum+,+cbsort+,+preview+);db.update1(sql); );2.添加新讀者的界面:實現(xiàn)監(jiān)聽的核心代碼

19、如下:btnsubmit.addactionlistener(new actionlistener()public void actionperformed(actionevent e) if (txtid.gettext().equals()|txtname.gettext().equals() |txtbirthday.gettext().equals()| cblsex.getselecteditem().equals() |txtphone.gettext().equals() | txtaddress.gettext().equals() ) javax.swing.joptionp

20、ane.showmessagedialog(addreader.this, 各欄均不能為空!); else conndb db = conndb.createinstance(); string id = txtid.gettext();string name = txtname.gettext();string birthday = txtbirthday.gettext();string sex = (string)cblsex.getselecteditem();string phone = txtphone.gettext();string address = txtaddress.g

21、ettext(); string sql1 = insert users values (+id+,+name+,+sex+,+birthday+,+phone+,+address+,+id+,0); db.update1(sql1); string sql = select uid from users where uname = +txtname.gettext() + + order by uregtime desc; db.setps(sql); resultset rs = db.getrs(); string ids = null; try if(rs.next() ids = r

22、s.getstring(uid); javax.swing.joptionpane.showmessagedialog(addreader.this,讀者添加成功!讀者編號為: + id + 請牢記!); else javax.swing.joptionpane.showmessagedialog(addreader.this,讀者添加失??!請重試。); catch (sqlexception ex1) javax.swing.joptionpane.showmessagedialog(addreader.this,ex1.getmessage().tostring(); );由于數(shù)據(jù)庫學(xué)的不

23、是很好,所以開始的時候一些增、刪、改、查的sql語句弄得我焦頭爛額,在同學(xué)的幫助下,這部分終于成功了。啟發(fā):在遇到困難的時候,如果自己故居奮戰(zhàn)不能把問題解決,那么就要求救于人或是上網(wǎng)查些資料,不要自己死摳,以免鉆入死胡同,有時候還是集體的智慧比較厲害。3. 刪除功能模塊程序名稱圖書管理系統(tǒng)功能描述實現(xiàn)了讀者和圖書的刪除功能開發(fā)者祝靈葉起止日期2009-12-152010-12-181.舊書撤出的界面: 實現(xiàn)監(jiān)聽的核心代碼如下: btnsubmit.addactionlistener(new actionlistener()public void actionperformed(actionev

24、ent e) / todo 自動生成方法存根string id = txtid.gettext().trim();string sql = delete from books where id=+id+;db = conndb.createinstance();/連接數(shù)據(jù)庫db.update1(sql);string sql1 = select * from books where id=+id+;db.setps(sql1);db.query1(sql1);try if(!db.getrs().next()joptionpane.showoptiondialog(deletebook.thi

25、s,刪除成功,提示框, joptionpane.default_option, joptionpane.information_message,null, null, null); elsejoptionpane.showoptiondialog(deletebook.this,刪除不成功,提示框, joptionpane.default_option, joptionpane.information_message,null, null, null); catch (headlessexception e1) / todo auto-generated catch blocke1.print

26、stacktrace(); catch (sqlexception e1) / todo auto-generated catch blocke1.printstacktrace();2.刪除讀者的界面: 實現(xiàn)監(jiān)聽的核心代碼如下: btnsubmit.addactionlistener(new actionlistener()public void actionperformed(actionevent e) if (txtid.gettext().equals() | cblsex.getselecteditem().equals() |txtphone.gettext().equals()

27、 | txtaddress.gettext().equals() | txtname.gettext().equals()| txtbirthday.gettext().equals() javax.swing.joptionpane.showmessagedialog(deletereader.this, 各欄位不能為空,請重填!); else conndb db = conndb.createinstance(); string readid = txtid.gettext().trim(); string sql = delete from users where uid=+readid

28、+; db.update1(sql); string sql1 = select * from books where id=+readid+;db.setps(sql1);db.query1(sql1); try if (!db.getrs().next() javax.swing.joptionpane.showmessagedialog(deletereader.this,編號為 + readid + 的讀者已被成功刪除!); else javax.swing.joptionpane.showmessagedialog(deletereader.this, 刪除失??!請再試。); cat

29、ch (headlessexception e1) / todo auto-generated catch blocke1.printstacktrace(); catch (sqlexception e1) / todo auto-generated catch blocke1.printstacktrace(); );.由于數(shù)據(jù)庫學(xué)的不是很好,所以開始的時候一些增、刪、改、查的sql語句弄得我焦頭爛額,在同學(xué)的幫助下,這部分終于成功了。啟發(fā):在遇到困難的時候,如果自己故居奮戰(zhàn)不能把問題解決,那么就要求救于人或是上網(wǎng)查些資料,不要自己死摳,以免鉆入死胡同,有時候還是集體的智慧比較厲害。4.

30、更新功能模塊程序名稱圖書管理系統(tǒng)功能描述實現(xiàn)了讀者和圖書的更新功能開發(fā)者祝靈葉起止日期2009-12-182010-12-201.圖書信息更新的界面: 實現(xiàn)監(jiān)聽的核心代碼如下: btnsure.addactionlistener(new actionlistener() public void actionperformed(actionevent e) conndb db = conndb.createinstance(); string sql = update books set id = + txtbid.gettext() +,name = + txtbname.gettext()

31、+,author = + txtbauthor.gettext() + ,publisher = + txtpublisher.gettext() +,price = + double.parsedouble(txtprice.gettext() + ,sums = +txtbsum.gettext() + ,sort = + (string) cbsort.getselecteditem() +,preview = +txtbpreview.gettext() + where id =+id+ ; db.update1(sql); javax.swing.joptionpane.showme

32、ssagedialog(updatebook.this, 圖書信息修改成功!); );2.讀者信息更新的界面: 實現(xiàn)監(jiān)聽的核心代碼如下: btnsure.addactionlistener(new actionlistener()public void actionperformed(actionevent e) conndb db = conndb.createinstance();string sql = update users set uname=+txtuname.gettext().trim()+,phone= + txtphone.gettext().trim() +,addre

33、ss= + txtaddress.gettext().trim() +,usex= + txtusex.gettext().trim() +,birthday= + txtbirthday.gettext().trim()+ where uid = + id.trim()+;db.update1(sql);javax.swing.joptionpane.showmessagedialog(updatereader.this, 信息修改成功!););由于數(shù)據(jù)庫學(xué)的不是很好,所以開始的時候一些增、刪、改、查的sql語句弄得我焦頭爛額,在同學(xué)的幫助下,這部分終于成功了。啟發(fā):在遇到困難的時候,如果自

34、己故居奮戰(zhàn)不能把問題解決,那么就要求救于人或是上網(wǎng)查些資料,不要自己死摳,以免鉆入死胡同,有時候還是集體的智慧比較厲害。5.查詢功能模塊程序名稱圖書管理系統(tǒng)功能描述實現(xiàn)了讀者和圖書的查詢功能開發(fā)者祝靈葉起止日期2009-12-212010-12-231. 圖書信息查詢的界面: 實現(xiàn)監(jiān)聽的核心代碼如下: btnfind.addactionlistener(new actionlistener()public void actionperformed(actionevent e) if (txtwhat.gettext().equals() javax.swing.joptionpane.show

35、messagedialog(bookmanage.this, 請輸入查詢信息!); return; conndb db = conndb.createinstance(); string sql = ; if (string) cbway.getselecteditem().equals(圖書編號) /integer.parseint(txtwhat.gettext(); sql = select * from books where id = +txtwhat.gettext()+; else if (string) cbway.getselecteditem().equals(圖書名稱)

36、sql = select * from books where name = + txtwhat.gettext() +; else if (string) cbway.getselecteditem().equals(類別) sql = select * from books where sort = + txtwhat.gettext() + ; else if (string) cbway.getselecteditem().equals(圖書作者) sql = select * from books where author = + txtwhat.gettext() +; else

37、sql = select * from books where publisher = + txtwhat.gettext() +; jtable table = inittable(sql); jscrollpane jsp = new jscrollpane(table); jsp.setbounds(20, 150, 650, 250); / p1.add(jsp); panel.add(jsp);bookmanage.this.setvisible(true);db.closeall(););2.讀者信息查詢的界面: 實現(xiàn)監(jiān)聽的核心代碼如下: btnfind.addactionlist

38、ener(new actionlistener()public void actionperformed(actionevent e) if (txtwhat.gettext().equals() javax.swing.joptionpane.showmessagedialog(readermanage.this, 請輸入查詢信息!); return; conndb db =conndb.createinstance(); string sql = ; if (string) cbway.getselecteditem().equals(讀者編號) sql = select * from u

39、sers where uid = +integer.parseint(txtwhat.gettext(); else sql = select * from users where uname = + txtwhat.gettext() + ; /開始查詢 db.setps(sql); db.query1(sql); resultset rs = db.getrs(); int count = 0; try /count用于查詢共有多少條包含指定條件的信息 while (rs.next() count+; rs.close(); catch (sqlexception ex1) javax.s

40、wing.joptionpane.showmessagedialog(readermanage.this,ex1.getmessage().tostring(); object cells = new objectcount9; try int i = 0; while (rs.next() cellsi = new object rs.getstring(1),rs.getstring(2), rs.getstring(3),rs.getstring(4), rs.getstring(5), rs.getstring(6); i+; string colnames = 讀者編號, 讀者姓名,

41、 性別, 出生年月, 聯(lián)系電話, 家庭住址; jtable1 = new jtable(cells, colnames); jscrollpane1.getviewport().add(jtable1); rs.close(); catch (sqlexception ex) javax.swing.joptionpane.showmessagedialog(readermanage.this,ex.getmessage().tostring(); );由于數(shù)據(jù)庫學(xué)的不是很好,所以開始的時候一些增、刪、改、查的sql語句弄得我焦頭爛額,在同學(xué)的幫助下,這部分終于成功了。啟發(fā):在遇到困難的時候,

42、如果自己故居奮戰(zhàn)不能把問題解決,那么就要求救于人或是上網(wǎng)查些資料,不要自己死摳,以免鉆入死胡同,有時候還是集體的智慧比較厲害。6.圖書借閱、續(xù)借及歸還功能模塊程序名稱圖書管理系統(tǒng)功能描述實現(xiàn)了讀者的借閱、續(xù)借和歸還功能開發(fā)者祝靈葉起止日期2009-12-232010-12-251.圖書借閱的界面: 實現(xiàn)監(jiān)聽的核心代碼如下: btnsure.addactionlistener(new actionlistener()public void actionperformed(actionevent e) if (tfbooknumber.gettext().equals() | tfusernumb

43、er.gettext().equals()javax.swing.joptionpane.showmessagedialog(borrow.this, 各欄位不能為空!); else /更新相關(guān)數(shù)據(jù)并將該書庫存量減1 conndb db = conndb.createinstance(); string sqls = select uname from users where uid=+tfusernumber.gettext()+; db.setps(sqls); db.query1(sqls); / string username;try if(db.getrs().next()usern

44、ame = db.getrs().getstring(1);system.out.println(username); catch (sqlexception e1) / todo auto-generated catch blocke1.printstacktrace();string sqlsb = select name,sums from books where id=+tfbooknumber.gettext()+; db.setps(sqlsb); db.query1(sqlsb); / string bookname;try if(db.getrs().next()booknam

45、e = db.getrs().getstring(1).trim();sums = integer.parseint(db.getrs().getstring(2);system.out.println(bookname+sums); catch (sqlexception e1) / todo auto-generated catch blocke1.printstacktrace(); string sql1 = insert into borrow values (+tfbooknumber.gettext()+,+username+,+tfbooknumber.gettext()+,+bookname+,否); db.update1(sql1); string sql2 = update books set sums=+(sums-1)+ where id=+tfbooknumber.gettext()+; db.update1(sql2); javax.swing.joptionpane.showmessagedialog(borrow.this, 借書成功!); );2.圖書續(xù)借的界面: 實

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論