版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Java核心技术综合实验报告课程名称:Java核心技术专业:计算机科学与技术名:学号:指导教师:成绩:完成日期:2015年12月18日技术资料分享1系统分析与设计1.1需求分析图书管理系统是高校图书馆不可缺少的一部分,通过图书管理系统可以实现计算机化的图书借阅管理,能够提供方便快速的图书信息检索功能和便捷的图书借阅和归还功能,并且能够对图书信息和读者信息进行管理,方便管理员和读者的借阅处理。(本人实现了图书添加、图书查询与修改、图书类别管理、用户添加、用户删除、修改密码功能模块的设计)要求系统具备以下特点。(1)操作简单、易用。(2)数据存储可靠,具备较高的处理效率。(3)系统安全、稳定。(4
2、)开发技术先进、功能完善、扩展性强。1.2系统功能设计根据需求分析,本系统具体的功能模块图如图1.2.1所示。甜Nf,'息世口'JR,阖Hlllil:浜#共刑i'iK.:llr察川图1.2.1图书借阅系统功能结构图1.2.1读者信息管理1、读者信息添加实现向数据库中添加读者信息的功能。2、读者信息查询与修改实现查询指定编号、姓名、类别以及所在部门的读者信息,并对选中的读者信息进行修改操作。1.2.2 图书信息管理1、图书信息添加实现向数据库中添加图书信息的功能。2、图书信息查询与修改实现查询指定ISBN、图书名称、类别、作者以及出版社的图书信息,并对选中的图书信息进行修
3、改操作。1.2.3 图书借阅管理1、图书借阅输入读者的编号以及借阅的图书信息,记录系统当前时间为借阅时间。2、图书归还输入读者的编号并选择其名下已借阅的图书,记录系统当前日期为归还时间,判断是否超期并计算罚金。1.2.4 基础信息维护1、图书类别设置实现显示数据库中图书类别的功能,并对选中的图书类别进行增、删、改、查功能。2、读者类别设置实现显示数据库中读者类别的功能,并对选中的读者类别进行增、删、改、查功能。3、罚金设置可以指定超期一天的罚金标准。1.2.5 用户管理1、修改密码实现当前用户登陆后,修改用户自己密码的功能。2、用户添加实现向数据库中增加用户的功能。3、用户删除实现显示数据库中
4、的用户信息,并对选中的用户进行删除的功能。1.3数据库设计根据需求分析,创建6个数据表,即图书表、图书类型表、读者表、读者类型表、图书借阅表以及用户表。1、图书表,表名为book,包括ISBN、图书类型编号、图书名称、作者、出版社、出版日期、印刷次数和单价,其中ISBN为主键,如表1.1所示。表1.1图书信息表book列名数据类型长度是否为空说明ISBNchar10否ISBN(主键)typeidvarchar10是图书类型编号booknamevarchar30是图书名称authorvarchar30是作者publishvarchar30是出版社publishdatedate是出版日期print
5、timeint是印刷次数unitpricemoney是单价图书表数据如图1.3.1所示。ISBNtypadboakriameauthorpublishpublishdat亡prinitime00014数据库原理及划平清华大学出版社1900-01-0100021檢率论与嫩理北京邮电夫学1900-01-0100031意林00意林杂志出版社1900-01-01000042中国古代文学左缝学出版社1900-01-01删E00055电子技朮基础姜桥人民邮电出版社1900-01-01NULL图1.3.1图书表数据2、图书类型表,表名为booktype,包括图书类型编号、图书类型名称,其中图书类型编号为主键
6、,如表1.2所示。表1.2图书类型表booktype列名数据类型长度是否为空说明idint否图书类型编号(主键)typenamevarchar30是图书类型名称图书类型表数据如图1.3.2所示。图1.3.2图书类型表数据3、读者表,表名为reader,包括读者编号、读者类型编号、读者姓名、年龄、性别、电话、所在系部、注册日期,其中读者编号为主键,如表1.3所示。表1.3读者信息表reader列名数据类型长度是否为空说明readeridchar8否读者编号(主键)typeint是读者类型编号namechar20是读者姓名ageint是年龄sexchar4是性别phonechar11是电话dept
7、varchar20是所在系部regdatedate是注册日期读者表数据如图1.3.3所示。PCZ015110S1512.db.orrQW-dbc.read&rPC201511.0&15L2,d,.,ow-dbobooktypePC2015110&L512.d.borrow-dkreaderidtypenameagephon皂dept11沈借竹19女U8242B27448计算机21畅依滴18畀崖筑31李勤学1933331333电气41牛晓艺19女英语52沈尼玛16男18242B27448数学hftrjt;hsnJJiSSIfiSJSI图1.3.3读者表数据4、读者类型表,
8、表名为readertype,包括读者类型编号、读者类型名称、最多可借图书数量、最长可借阅图书天数,其中读者类型编号为主键,如表1.4所示。表1.4读者类型表readertype列名数据类型长度是否为空说明idint否读者类型编号(主键)typenamevarchar20是读者类型名称maxborrownumint是最多可借图书数量limitint是最长可借阅图书天数读者类型表数据如图1.3.4所示。idtypenamemaxborrawnunlimitn学生5Id2埶师10153员工1015图1.3.4读者类型表数据5、用户表,表名为users,包括用户编号、用户名称、用户密码,其中用户编号为
9、主键,如表1.5所示。表1.5用户信息表users列名数据类型长度是否为空说明idint否用户编号(主键)namevarchar20是用户名称passwordvarchar20是用户密码用户表数据如图1.3.5所示。idnamepassword11shenqianztiu1应畅恠阔1403min1404味養琳zhangjialin1405杨金昇yangjinshengM06|111111NULLNULLMULL图1.3.5用户表数据6、图书借阅表,表名为borrowbook,包括读者编号、ISBN、借书日期、还书日期、罚金,其中读者编号和ISBN为联合主键,如表1.6所示。表1.6图书借阅表b
10、orrowbook列名数据类型长度是否为空说明readeridchar8否读者编号(主键)ISBNchar10否ISBN(主键)borrowdatedate是借书日期returndatedate是还书日期finemoney是罚金图书借阅表数据如图1.3.6所示。readeridISBNborrowdatereturndatefine00032015-03-01ZJO15-09-03o.oooaQZ00012Q15-0S-022J015-09-06o.oooa0300032015-0-022j015-09-030.0000口斗00042015-0-012J015-O9-OFo.oooaAJTJT
11、/£rrArXTJAfJTf图1.3.6图书借阅表数据2系统实现2.1系统框架项目分为model、view、db三个包,具体项目架构的设计如图2.1.1所示。亠由combbrn,db丄Eo-okEa-rrowDaojava丄Eo-&kTypeDao.java丄>aojava> jReaderDsojava=TReaderTypeDaojava=TU&erDso.javaJ由com.bbm.model,J,Eo-&k.java丄Bcr&lcType.Java,J,Bo-rrowBook.java*T|Readerjava»JJR.e
12、aderType.jsva、T|User&.java丿曲com.bbm.view.J_,B00lcA.dd.j3va J_,Eo-okEo-rrow.java.J_,E&&kReturn.java.J_,Eo-okSele-ctandUpdate.Java.J_,Eo-olctypeAdm.java J_,Fine-Set.java.Library.java=JT|LogInJava> !JJPasswordChange.jsvak更|ReaderAddJava»!JJReadsetsndUpdste,java> JjjReadertypeAdm.
13、jawa> !JJLJserAdd.java?F71U亡rD亡1pt已.i刃图2.1.1图书借阅表数据1、在com.bbm.model包中创建图书借阅管理系统中的实体类:Book类,BookType类,Reader类,ReaderType类,Users类,BorrowBook类,如表2.1所示。表2.1实体类表com.bbm.model文件名说明Book.java图书类模型BookType.java图书类型类模型BorrowBook.java图书借阅类模型Reader.java读者类模型ReaderType.java读者类型类模型Users.java用户类模型2、在com.bbm.vie
14、w包中创建图书借阅管理系统中的界面及功能类,如表2.2所示。表2.2界面类表com.bbm.view文件名说明Login.java登陆界面及功能Library.java系统主界面及功能BookAdd.java图书添加界面及功能BookBorrow.java图书借阅界面及功能BookReturn.java图书归还界面及功能BookSelectandUpdate.java图书查询与修改界面及功能BooktypeAdm.java图书类型管理界面及功能ReaderAdd.java读者添加界面及功能ReaderSelectandUpdate.java读者查询与修改界面及功能ReadertypeAdm.j
15、ava读者类型管理界面及功能UserAdd.java用户添加界面及功能UserDelete.java用户删除界面及功能PasswordChange.java修改密码界面及功能FineSet.java罚金设置界面及功能3、在com.bbm.db包中创建图书借阅管理系统中的数据访问操作类,如表2.3所示。表2.3数据访问操作类表com.bbm.db文件名说明Dao.java基本数据访问操作类ReaderDao.java读者操作类BookDao.java图书操作类ReaderTypeDao.java读者类型操作类BookTypeDao.java图书类型操作类BookBorrowDao.java图书借
16、阅操作类UserDao.java用户操作类2.2图书类型管理模块的实现2.2.1图书类型管理模块界面的设计与实现图书类型管理模块界面的实现分为三个面板,图书类型查询面板(selectjp),其中包含查询结果面板(jspjp)位于selectjp中部,selectjp整体位于整个JFrame的北部,修改信息面板(infojp)位于整个JFrame中部,按钮面板(buttonjp)位于整个JFrame南部。如图2.2.1所示。圏书塑型:囹书类型编号;7圏书类型容称;数学删除遢出图2.2.1图书类型管理模块界面主要代码如下:selectjp.add(jspjp,BorderLayout.CENTER
17、);this.add(selectjp,BorderLayout.NORTH);this.add(infojp,BorderLayout.CENTER);this.add(buttonjp,BorderLayout.SOUTH);2.2.2图书类型管理模块数据操作的设计与实现本模块需要进行的数据操作如下:1、获取数据库中图书类型表中的数据主要代码如下:publicstaticList<BookType>selectBookType()List<BookType>list=newArrayList<BookType>();Stringsql="sel
18、ect*frombooktype"ResultSetrs=Dao.executeQuery(sql);trywhile(rs.next()BookTypebt=newBookType();bt.setId(rs.getInt("id");bt.setTypename(rs.getString("typename");list.add(bt);catch(Exceptione)e.printStackTrace();Dao.close();returnlist;2、对指定的图书类型的图书信息进行查询主要代码如下:publicstaticList&
19、lt;BookType>selectBookTypeName(Stringtype)List<BookType>list=newArrayList<BookType>();Stringsql="select*frombooktypewheretypenamelike'%"+type+"%ResultSetrs=Dao.executeQuery(sql);trywhile(rs.next()BookTypebt=newBookType();bt.setId(rs.getInt("id");bt.setType
20、name(rs.getString("typename");list.add(bt);catch(Exceptione)e.printStackTrace();Dao.close();returnlist;3、对其进行添加操作主要代码如下:publicstaticintinsertBookType(Stringbtno,Stringtypename)inti=0;tryStringsql="insertintobooktypevalues("+btno+",'"+typename+"')"i=Dao
21、.executeUpdate(sql);catch(Exceptione)e.printStackTrace();Dao.close();returni;4、对其进行修改操作代码同3,具体sq丨语句如下:Stringsql="updatebooktypesetid="+btno+",typename='"+typename+"'whereid="+btno+""5、对其进行删除操作代码同3,具体sql语句如下:Stringsql="deletefrombooktypewhereid二&qu
22、ot;+id+""2.2.3图书类型管理模块功能的设计与实现本模块实现的功能如下:1、获取数据库中图书类型表中的数据到JTable中,并添加鼠标监听如上图2.2.1所示。主要代码为:Objectresults二getSelect(BookTypeDao.selectBookType();/显示图书类别信息/添加鼠标监听classTableListenerextendsMouseAdapterOverridepublicvoidmouseClicked(MouseEvente)intselRow=jt.getSelectedRow();/获取选择表中的某一行保存信息btnoj
23、tf.setText(jt.getValueAt(selRow,O).toString().trim();/获取列并赋值btnamejtf.setText(jt.getValueAt(selRow,1).toString().trim();2、对查询按钮添加监听器(SelectAction),对图书类别进行模糊查询,如图2.2.2所示。哥书类型蝙号囹书类型窑称7宵图2.2.2查询功能的实现主要代码为:classSelectActionimplementsActionListenerOverridepublicvoidactionPerformed(ActionEvente)/TODOAuto-
24、generatedmethodstubStringbtname二btjtf.getText().trim();BookTypeDao.selectBookTypeNam&btname);Objectresults二getSelect(BookTypeDao.selectBookTypeNam(btname);jt=newJTable(results,readersearch);jsp.setViewportView(jt);jt.setAutoResizeMode(JTable.AUT0_RESIZE_0FI);3、对添加按钮添加监听器(AddAction),向图书类别表中添加新的图书
25、类别信息,例如:添加编号为“8”名称为“化学”的图书类别信息,如图2.2.3(1)所示。4、图2.2.3(1)添加成功更新后,如图2.2.3(2)所示。哥书类型编号圏书类型茗称12文字3杂志/计聲机5电子丄英语7数学化学图2.2.3(2)添加功能的实现主要代码为:classAddActionimplementsActionListenerOverridepublicvoidactionPerformed(ActionEvente)if(btnojtf.getText().length()=O)JOptionPane.showMessageDialo(null,"图书类型编号不能为空!
26、");return;if(btnamejtf.getText().length()=0)JOptionPane.showMessageDialo(null,"图书类型名称不能为空!");return;Stringbtno=btnojtf.getText().trim();Stringbtname=(String)btnamejtf.getText().trim();inti=BookTypeDao.insertBookTyp&btno,btname);if(i=1)JOptionPane.showMessageDialo(null,"添加成功&q
27、uot;);Objectresults=getSelect(BookTypeDao.selectBookTypeO);jt=newJTable(results,readersearch);jsp.setViewportView(jt);jt.setAutoResizeMode(JTable.AUTO_RESIZE_OFI);5、对修改按钮添加监听器(UpdateAction),修改图书类别表中信息,例如将刚刚添加的“化学”修改为“生物”,如图2.2.4(1)所示。消息w隆功图2.2.4(1)修改成功更新后,如图2.2.4(2)所示。3生物FiriDrnT图2.2.4(2)修改功能的实现主要代码
28、为:classUpdateActionimplementsActionListenerOverridepublicvoidactionPerformed(ActionEvente)/TODOAuto-generatedmethodstubStringbtno=btnojtf.getText().trim();Stringbtname二btnamejtf.getText().trim();inti=BookTypeDao.updateBookTyp&btno,btname);System.out.println(i);if(i=1)JOptionPane.showMessageDialo
29、(null,"修改成功");Objectresults=getSelect(BookTypeDao.selectBookTypeO);jt=newJTable(results,readersearch);jsp.setViewportView(jt);jt.setAutoResizeMode(JTable.AUTO_RESIZE_OFI);6、对删除按钮添加监听器(DeleteAction),删除图书类别表中信息,例如将刚刚修改的“生物”删除,如图2.2.5(1)所示。图2.2.5(1)删除成功更新后,如图2.2.5(2)所示。哥书类型编号圜书类型宅称1?3杂志d计箕机5电
30、子5英语7埶学物理图2.2.5(2)删除功能的实现主要代码为:classDeleteActionimplementsActionListener0verridepublicvoidactionPerformed(ActionEvente)/TODOAuto-generatedmethodstubStringbtno=btnojtf.getText().trim();inti=BookTypeDao.deleteBookTyp&btno);System.out.println(i);if(i=1)JOptionPane.showMessageDialo(null,"删除成功!&
31、quot;);Objectresults=getSelect(BookTypeDao.selectBookTypeO);jt=newJTable(results,readersearch);jsp.setViewportView(jt);jt.setAutoResizeMode(JTable.AUTO_RESIZE_OFI);6、对退出按钮添加监听器(OutAction),实现关闭程序功能。主要代码如下:classOutActionimplementsActionListener0verridepublicvoidactionPerformed(ActionEvente)/TODOAuto-generatedmethodstubsetVisible(false);2.3用户添加模块的实现2.3.1用户添加模块界面的设计与实现用户添加模块界面的实现分为两个面板,用户添加信息面板(jp1,个2行两列的表格)位于整个JFrame的中部,按钮面板(buttonjp)位于整个JFrame的南部。如图2.3.1所示。图2.3.1用户添加模块界面主要代码如下:jp1.setLayout(newGridLayout(2,2);this.add(jp1,Borde
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 产假代岗人员补充协议
- 木制玩具制作工岗前安全培训考核试卷含答案
- 幼儿园“绘梦蓝天·亲子同行”彩绘风筝活动方案
- 宝剑工岗前核心能力考核试卷含答案
- 丙烯酸树脂装置操作工岗前实操综合知识考核试卷含答案
- 钛冶炼工QC管理知识考核试卷含答案
- 木地板制造工岗前理论能力考核试卷含答案
- 2026年秋季小学年级组长学期教学管理提质课件
- 传输机务员技巧知识考核试卷含答案
- 玻璃制品手工成型工风险识别水平考核试卷含答案
- 试生产调度制度
- 食品安全常识课件
- 乒乓球基本技术
- 2026年娄底职业技术学院单招职业技能测试题库附答案详解
- 全国大学生职业规划大赛《无人驾驶航空器系统工程》专业生涯发展展示【曾获省级一等奖】
- 混凝土预制块护坡施工质量通病防治手册
- T/CI 614-2024COB小间距显示屏可靠性测试与评估规范
- “巴渝工匠”杯第十三届青年职业技能大赛(全媒体运营师赛项)备赛试题库(含答案)
- 工程类行业营销方案(3篇)
- 《植物妈妈有办法》课件 统编版语文二年级上册
- 海警基本知识培训课件
评论
0/150
提交评论