版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、-. zJava核心技術(shù)綜合實(shí)驗(yàn)報(bào)告課程名稱: Java核心技術(shù) 專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) 姓 名:學(xué) 號:指導(dǎo)教師:成 績:完成日期: 2015年12月18日1 系統(tǒng)分析與設(shè)計(jì)1.1 需求分析圖書管理系統(tǒng)是高校圖書館不可缺少的一局部,通過圖書管理系統(tǒng)可以實(shí)現(xiàn)計(jì)算機(jī)化的圖書借閱管理,能夠提供方便快速的圖書信息檢索功能和便捷的圖書借閱和歸還功能,并且能夠?qū)D書信息和讀者信息進(jìn)展管理,方便管理員和讀者的借閱處理。本人實(shí)現(xiàn)了圖書添加、圖書查詢與修改、圖書類別管理、用戶添加、用戶刪除、修改密碼功能模塊的設(shè)計(jì)要求系統(tǒng)具備以下特點(diǎn)。1操作簡單、易用。2數(shù)據(jù)存儲可靠,具備較高的處理效率。3系統(tǒng)平安、穩(wěn)定。
2、4開發(fā)技術(shù)先進(jìn)、功能完善、擴(kuò)展性強(qiáng)。1.2 系統(tǒng)功能設(shè)計(jì)根據(jù)需求分析,本系統(tǒng)具體的功能模塊圖如圖1.2.1所示。圖1.2.1 圖書借閱系統(tǒng)功能構(gòu)造圖1.2.1 讀者信息管理 1、讀者信息添加 實(shí)現(xiàn)向數(shù)據(jù)庫中添加讀者信息的功能。 2、讀者信息查詢與修改實(shí)現(xiàn)查詢指定編號、類別以及所在部門的讀者信息,并對選中的讀者信息進(jìn)展修改操作。1.2.2圖書信息管理 1、圖書信息添加 實(shí)現(xiàn)向數(shù)據(jù)庫中添加圖書信息的功能。 2、圖書信息查詢與修改 實(shí)現(xiàn)查詢指定ISBN、圖書名稱、類別、作者以及的圖書信息,并對選中的圖書信息進(jìn)展修改操作。1.2.3圖書借閱管理 1、圖書借閱 輸入讀者的編號以及借閱的圖書信息,記錄系統(tǒng)
3、當(dāng)前時(shí)間為借閱時(shí)間。 2、圖書歸還 輸入讀者的編號并選擇其名下已借閱的圖書,記錄系統(tǒng)當(dāng)前日期為歸還時(shí)間,判斷是否超期并計(jì)算罰金。1.2.4根底信息維護(hù) 1、圖書類別設(shè)置 實(shí)現(xiàn)顯示數(shù)據(jù)庫中圖書類別的功能,并對選中的圖書類別進(jìn)展增、刪、改、查功能。 2、讀者類別設(shè)置實(shí)現(xiàn)顯示數(shù)據(jù)庫中讀者類別的功能,并對選中的讀者類別進(jìn)展增、刪、改、查功能。3、罰金設(shè)置可以指定超期一天的罰金標(biāo)準(zhǔn)。1.2.5用戶管理 1、修改密碼 實(shí)現(xiàn)當(dāng)前用戶登陸后,修改用戶自己密碼的功能。 2、用戶添加實(shí)現(xiàn)向數(shù)據(jù)庫中增加用戶的功能。3、用戶刪除實(shí)現(xiàn)顯示數(shù)據(jù)庫中的用戶信息,并對選中的用戶進(jìn)展刪除的功能。數(shù)據(jù)庫設(shè)計(jì)根據(jù)需求分析,創(chuàng)立6個
4、數(shù)據(jù)表,即圖書表、圖書類型表、讀者表、讀者類型表、圖書借閱表以及用戶表。1、圖書表,表名為book,包括ISBN、圖書類型編號、圖書名稱、作者、出版日期、印刷次數(shù)和單價(jià),其中ISBN為主鍵,如表1.1所示。表1.1 圖書信息表book列名數(shù)據(jù)類型長度是否為空說明ISBNchar10否ISBN主鍵typeidvarchar10 是圖書類型編號booknamevarchar30是圖書名稱authorvarchar30是作者publishvarchar30是publishdatedate是出版日期printtimeint是印刷次數(shù)unitpricemoney是單價(jià)圖書表數(shù)據(jù)如圖1.3.1所示。圖1.
5、3.1 圖書表數(shù)據(jù)2、圖書類型表,表名為booktype,包括圖書類型編號、圖書類型名稱,其中圖書類型編號為主鍵,如表1.2所示。表1.2 圖書類型表booktype列名數(shù)據(jù)類型長度是否為空說明idint否圖書類型編號主鍵typenamevarchar30是圖書類型名稱圖書類型表數(shù)據(jù)如圖1.3.2所示。圖1.3.2 圖書類型表數(shù)據(jù)3、讀者表,表名為reader,包括讀者編號、讀者類型編號、讀者、年齡、性別、所在系部、注冊日期,其中讀者編號為主鍵,如表1.3所示。表1.3 讀者信息表reader列名數(shù)據(jù)類型長度是否為空說明readeridchar8否讀者編號主鍵typeint 是讀者類型編號na
6、mechar20是讀者ageint是年齡se*char4是性別phonechar11是deptvarchar20是所在系部regdatedate是注冊日期讀者表數(shù)據(jù)如圖1.3.3所示。圖1.3.3 讀者表數(shù)據(jù)4、讀者類型表,表名為readertype,包括讀者類型編號、讀者類型名稱、最多可借圖書數(shù)量、最長可借閱圖書天數(shù),其中讀者類型編號為主鍵,如表1.4所示。表1.4 讀者類型表readertype列名數(shù)據(jù)類型長度是否為空說明idint否讀者類型編號主鍵typenamevarchar20是讀者類型名稱ma*borrownumint是最多可借圖書數(shù)量limitint是最長可借閱圖書天數(shù)讀者類型表
7、數(shù)據(jù)如圖1.3.4所示。圖1.3.4 讀者類型表數(shù)據(jù)5、用戶表,表名為users,包括用戶編號、用戶名稱、用戶密碼,其中用戶編號為主鍵,如表1.5所示。表1.5 用戶信息表users列名數(shù)據(jù)類型長度是否為空說明idint否用戶編號主鍵namevarchar20是用戶名稱passwordvarchar20是用戶密碼用戶表數(shù)據(jù)如圖1.3.5所示。圖1.3.5 用戶表數(shù)據(jù)6、圖書借閱表,表名為borrowbook,包括讀者編號、ISBN、借書日期、還書日期、罰金,其中讀者編號和ISBN為聯(lián)合主鍵,如表1.6所示。表1.6 圖書借閱表borrowbook列名數(shù)據(jù)類型長度是否為空說明readeridch
8、ar8否讀者編號主鍵ISBNchar10否ISBN主鍵borrowdatedate是借書日期returndatedate是還書日期finemoney是罰金圖書借閱表數(shù)據(jù)如圖1.3.6所示。圖1.3.6 圖書借閱表數(shù)據(jù)2 系統(tǒng)實(shí)現(xiàn)2.1 系統(tǒng)框架工程分為model、view、db三個包,具體工程架構(gòu)的設(shè)計(jì)如圖2.1.1所示。圖2.1.1 圖書借閱表數(shù)據(jù)1、在.bbm.model包中創(chuàng)立圖書借閱管理系統(tǒng)中的實(shí)體類:Book類,BookType類,Reader類,ReaderType類,Users類,BorrowBook類,如表2.1所示。表2.1 實(shí)體類表.bbm.model 文件名說明Book.
9、java圖書類模型BookType.java圖書類型類模型BorrowBook.java圖書借閱類模型 Reader.java讀者類模型ReaderType.java讀者類型類模型Users.java用戶類模型2、在.bbm.view包中創(chuàng)立圖書借閱管理系統(tǒng)中的界面及功能類,如表2.2所示。表2.2 界面類表.bbm.view 文件名說明Login.java登陸界面及功能Library.java系統(tǒng)主界面及功能BookAdd.java圖書添加界面及功能BookBorrow.java圖書借閱界面及功能BookReturn.java圖書歸還界面及功能BookSelectandUpdate.java
10、 圖書查詢與修改界面及功能BooktypeAdm.java圖書類型管理界面及功能ReaderAdd.java讀者添加界面及功能ReaderSelectandUpdate.java讀者查詢與修改界面及功能ReadertypeAdm.java讀者類型管理界面及功能UserAdd.java用戶添加界面及功能UserDelete.java用戶刪除界面及功能PasswordChange.java修改密碼界面及功能FineSet.java罰金設(shè)置界面及功能3、在.bbm.db包中創(chuàng)立圖書借閱管理系統(tǒng)中的數(shù)據(jù)操作類,如表2.3所示。表2.3 數(shù)據(jù)操作類表.bbm.db文件名說明Dao.java根本數(shù)據(jù)操作類
11、ReaderDao.java讀者操作類BookDao.java圖書操作類ReaderTypeDao.java讀者類型操作類BookTypeDao.java圖書類型操作類BookBorrowDao.java圖書借閱操作類UserDao.java用戶操作類2.2 圖書類型管理模塊的實(shí)現(xiàn)2.2.1 圖書類型管理模塊界面的設(shè)計(jì)與實(shí)現(xiàn)圖書類型管理模塊界面的實(shí)現(xiàn)分為三個面板,圖書類型查詢面板selectjp,其中包含查詢結(jié)果面板(jspjp)位于selectjp中部,selectjp整體位于整個JFrame的北部,修改信息面板infojp位于整個JFrame中部,按鈕面板buttonjp位于整個JFram
12、e南部。如圖2.2.1所示。圖2.2.1 圖書類型管理模塊界面主要代碼如下:selectjp.add(jspjp,BorderLayout.CENTER);this.add(selectjp,BorderLayout.NORTH);this.add(infojp,BorderLayout.CENTER);this.add(buttonjp,BorderLayout.SOUTH);2.2.2 圖書類型管理模塊數(shù)據(jù)操作的設(shè)計(jì)與實(shí)現(xiàn)本模塊需要進(jìn)展的數(shù)據(jù)操作如下:1、獲取數(shù)據(jù)庫中圖書類型表中的數(shù)據(jù)主要代碼如下:publicstatic List selectBookType() List list =
13、 new ArrayList(); String sql = select * from booktype; ResultSet rs = Dao.e*ecuteQuery(sql);try while (rs.ne*t() BookType bt = new BookType(); bt.setId(rs.getInt(id); bt.setTypename(rs.getString(typename); list.add(bt); catch (E*ception e) e.printStackTrace(); Dao.close();return list; 2、對指定的圖書類型的圖書信
14、息進(jìn)展查詢主要代碼如下:publicstatic List selectBookTypeName(String type) List list = new ArrayList(); String sql = select * from booktype where typename like %+type+%; ResultSet rs = Dao.e*ecuteQuery(sql);try while (rs.ne*t() BookType bt = new BookType(); bt.setId(rs.getInt(id); bt.setTypename(rs.getString(typ
15、ename); list.add(bt); catch (E*ception e) e.printStackTrace(); Dao.close();return list; 3、對其進(jìn)展添加操作主要代碼如下:publicstaticint insertBookType(String btno,String typename) int i = 0;try String sql = insert into booktypevalues(+btno+,+typename+); i = Dao.e*ecuteUpdate(sql); catch (E*ception e) e.printStackT
16、race(); Dao.close();return i; 4、對其進(jìn)展修改操作代碼同3,具體sql語句如下:String sql = update booktype set id=+btno+,typename=+typename+where id=+btno+;5、對其進(jìn)展刪除操作代碼同3,具體sql語句如下:String sql = delete from booktype where id=+id+;2.2.3 圖書類型管理模塊功能的設(shè)計(jì)與實(shí)現(xiàn)本模塊實(shí)現(xiàn)的功能如下:獲取數(shù)據(jù)庫中圖書類型表中的數(shù)據(jù)到JTable中,并添加鼠標(biāo)監(jiān)聽如上圖2.2.1所示。主要代碼為:Object result
17、s=getSelect(BookTypeDao.selectBookType();/顯示圖書類別信息/添加鼠標(biāo)監(jiān)聽class TableListener e*tends MouseAdapterOverridepublicvoid mouseClicked(MouseEvent e) int selRow = jt.getSelectedRow();/獲取選擇表中的*一行 保存信息btnojtf.setTe*t(jt.getValueAt(selRow, 0).toString().trim();/獲取列并賦值btnamejtf.setTe*t(jt.getValueAt(selRow, 1)
18、.toString().trim(); 對查詢按鈕添加監(jiān)聽器SelectAction,對圖書類別進(jìn)展模糊查詢,如圖2.2.2所示。圖2.2.2 查詢功能的實(shí)現(xiàn)主要代碼為:class SelectAction implements ActionListenerOverridepublicvoid actionPerformed(ActionEvent e) / TODO Auto-generated method stubString btname=btjtf.getTe*t().trim();BookTypeDao.selectBookTypeName(btname);Objectresult
19、s=getSelect(BookTypeDao.selectBookTypeName(btname);jt = new JTable(results, readersearch);jsp.setViewportView(jt); jt.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);對添加按鈕添加監(jiān)聽器AddAction,向圖書類別表中添加新的圖書類別信息,例如:添加編號為8,名稱為化學(xué)的圖書類別信息,如圖2.2.3(1)所示。圖2.2.3(1)添加成功更新后,如圖2.2.32所示。圖2.2.3(2)添加功能的實(shí)現(xiàn)主要代碼為:class AddAction
20、implements ActionListenerOverridepublicvoid actionPerformed(ActionEvent e) if (btnojtf.getTe*t().length()=0) JOptionPane.showMessageDialog(null, 圖書類型編號不能為空!);return; if (btnamejtf.getTe*t().length() = 0) JOptionPane.showMessageDialog(null, 圖書類型名稱不能為空!);return; String btno= btnojtf.getTe*t().trim();
21、String btname=(String)btnamejtf.getTe*t().trim();int i=BookTypeDao.insertBookType(btno,btname);if (i=1) JOptionPane.showMessageDialog(null, 添加成功); Object results = getSelect(BookTypeDao.selectBookType();jt=new JTable(results, readersearch);jsp.setViewportView(jt);jt.setAutoResizeMode(JTable.AUTO_RES
22、IZE_OFF); 對修改按鈕添加監(jiān)聽器UpdateAction,修改圖書類別表息,例如將剛剛添加的化學(xué)修改為生物,如圖2.2.4(1)所示。圖2.2.4(1)修改成功更新后,如圖2.2.42所示。圖2.2.4(2)修改功能的實(shí)現(xiàn)主要代碼為:class UpdateAction implements ActionListenerOverridepublicvoid actionPerformed(ActionEvent e) / TODO Auto-generated method stubString btno=btnojtf.getTe*t().trim();String btname=b
23、tnamejtf.getTe*t().trim();int i=BookTypeDao.updateBookType(btno,btname);System.out.println(i);if(i=1) JOptionPane.showMessageDialog(null, 修改成功); Object results = getSelect(BookTypeDao.selectBookType();jt=new JTable(results, readersearch);jsp.setViewportView(jt);jt.setAutoResizeMode(JTable.AUTO_RESIZ
24、E_OFF); 6、對刪除按鈕添加監(jiān)聽器DeleteAction,刪除圖書類別表息,例如將剛剛修改的生物刪除,如圖2.2.5(1)所示。圖2.2.5(1)刪除成功更新后,如圖2.2.52所示。圖2.2.5(2)刪除功能的實(shí)現(xiàn)主要代碼為:class DeleteAction implements ActionListenerOverridepublicvoid actionPerformed(ActionEvent e) / TODO Auto-generated method stubString btno=btnojtf.getTe*t().trim();int i=BookTypeDao.
25、deleteBookType(btno);System.out.println(i);if(i=1) JOptionPane.showMessageDialog(null, 刪除成功!); Object results = getSelect(BookTypeDao.selectBookType();jt=new JTable(results, readersearch);jsp.setViewportView(jt);jt.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); 對退出按鈕添加監(jiān)聽器OutAction,實(shí)現(xiàn)關(guān)閉程序功能。主要代碼如下:class
26、OutAction implements ActionListenerOverridepublicvoid actionPerformed(ActionEvent e) / TODO Auto-generated method stubsetVisible(false);2.3 用戶添加模塊的實(shí)現(xiàn)2.3.1 用戶添加模塊界面的設(shè)計(jì)與實(shí)現(xiàn)用戶添加模塊界面的實(shí)現(xiàn)分為兩個面板,用戶添加信息面板jp1,一個2行兩列的表格位于整個JFrame的中部,按鈕面板buttonjp位于整個JFrame的南部。如圖2.3.1所示。圖2.3.1 用戶添加模塊界面主要代碼如下:jp1.setLayout(new GridLayout(2,2);this.add(jp1,BorderLayout.CENTER);this.add(buttonjp,
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 安徽省合肥市肥東縣新城高升學(xué)校2025屆生物高二上期末調(diào)研試題含解析
- 2025屆河北省灤縣實(shí)驗(yàn)中學(xué)生物高一第一學(xué)期期末學(xué)業(yè)水平測試試題含解析
- 2025屆安徽省十大名校生物高二上期末達(dá)標(biāo)檢測模擬試題含解析
- 2025屆安徽定遠(yuǎn)高復(fù)學(xué)校數(shù)學(xué)高一上期末學(xué)業(yè)水平測試模擬試題含解析
- 2025屆廣東省新興第一中學(xué)生物高二上期末教學(xué)質(zhì)量檢測模擬試題含解析
- 廣東省惠來縣前詹中學(xué)2025屆高一上數(shù)學(xué)期末統(tǒng)考模擬試題含解析
- 2025屆河南省新鄉(xiāng)七中英語高三上期末達(dá)標(biāo)檢測模擬試題含解析
- 2025屆浙江省寧波市第七中學(xué)數(shù)學(xué)高三上期末聯(lián)考模擬試題含解析
- 2025屆廣東省廣州市八區(qū)聯(lián)考語文高三上期末統(tǒng)考模擬試題含解析
- 2025屆安徽省合肥市高升學(xué)校生物高一上期末檢測模擬試題含解析
- 一、身體姿態(tài)評估與糾正PPT課件(PPT 24頁)
- 樣板引路工程施工方案(正弘瓴筑)
- 海瀾之家特許經(jīng)營協(xié)議合同
- 大眾汽車入侵北美市場
- 網(wǎng)絡(luò)安全教育培訓(xùn)課件(共30頁).ppt
- 建設(shè)銀行員工勞動合同
- 《藝術(shù)創(chuàng)意與創(chuàng)新管理》課程教學(xué)大綱
- (完整版)卸料平臺驗(yàn)收表
- 英國建筑工程合同管理模式
- 四年級上數(shù)學(xué)校本課程
- 人教版高一英語必修一單詞表及音標(biāo)(共28頁)
評論
0/150
提交評論