图书信息管理系统课程设计.doc
《图书信息管理系统课程设计.doc》由会员分享,可在线阅读,更多相关《图书信息管理系统课程设计.doc(23页珍藏版)》请在咨信网上搜索。
图书信息管理系统课程设计 ———————————————————————————————— 作者: ———————————————————————————————— 日期: 2 个人收集整理 勿做商业用途 XXX职业技术学院 课程设计论文 设计题目:图书管理系统 学生姓名:XXX 指导教师:XXX 专业名称:网络系统管理 所在院系:信息工程系 2007年 7月 5 日 摘 要 图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。 因此本人结合开入式图书馆的要求,对MS Access数据库管理系统、JAVA程序设计进行了较深入的学习和应用,主要完成对图书管理系统的需求分析、功能模块划分,并由此设计了数据库结构和应用程序。设计充分利用JAVA、MS Access数据库技术的强大力量,提高了编程效率和可靠性。 关键字:数据库 JAVA语言 Access 图书管理 GUI 目 录 第1章 选题及本次课程设计的任务 1 1.1查找资料 1 1。2选题 1 1。3总结数据、明确任务 1 1。4本次设计的重大意义 1 1。5本章小结 1 第2章 设计实现的详细步骤 2 2。1系统的基本结构 2 2。2用户登录窗体 2 2。3管理系统主窗体 3 2.4浏览图书信息 4 2。5添加图书信息 5 2。6修改图书信息 7 2.7查询图书信息 8 2。8删除图书信息 9 2。9读者信息管理 10 2.10 Access数据库 10 2。11本章小结 11 第3章 设计中遇到的重点及难点 12 3.1重点及难点 12 3.2本章小结 12 第4章 本次设计中存在不足与改良方案 13 4.1不足与改良方案 13 4.2本章小结 13 结 论 14 参考文献 15 致 谢 16 指导教师评语 17 答辩委员会评语 18 第1章 选题及本次课程设计的任务 1。1查找资料 《Java应用教程》 《Java2程序设计基础》 《Java程序设计教程与实训》 《管理信息系统》 1.2选题 图书管理系统 1。3总结数据、明确任务 该系统必须具备的数据库: 图书信息数据库、读者信息数据库、管理员数据库 该系统必须具备以下功能:1、能对各类图书实行分类管理;2、提供必要的读者信息;3、对图书的查询;4、具有图书检索功能;5、能对读者信息进行管理等。这样不仅能较好地帮助读者在最短的时间内找到自己所需要的图书书目、编号,而且能让图书管理员对读者信息进行管理 1.4本次设计的重大意义 在此次课程设计中,主要设计的是图书馆管理员管理图书部分。图书馆管理员有修改图书借阅者信息的权限,图书馆管理员功能的信息量大,数据安全性和保密性要求最高.本次课程设计实现对图书信息、借阅者信息。图书馆管理员可以浏览、查询、添加、删除、修改的基本信息;浏览、查询、添加、删除和修改图书借阅者的基本信息. 1.5本章小节 本章主要通过查找资料明确了此次课程设计的题目,并确定了此次课程设计的主要任务和此次课程设计的重要意义。 第2章 设计实现的详细步骤 2。1系统的基本结构 登录 图书信息管理 读者信息管理 浏览图书信息 添加新书信息 修改图书信息 查询图书信息 删除图书信息 2.2用户登录窗体的的实现 本窗体是为了让图书馆管理员按照账号和密码进行登录,如账号和密码输入正确,即可进入管理系统主窗体,而把用户登录窗体关闭。如果输入错误,则弹出错误提示. 图2-1 用户登录窗体 在输入管理员的登录信息时,通过连接数据库来判断信息是否正确。String strurl = ”jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=student.mdb”; Class。forName(”sun。jdbc.odbc。JdbcOdbcDriver"); Connection conn = DriverManager。getConnection(strurl); 2.3管理系统主窗体的的实现 管理系统主窗体是当管理员输入账号和密码正确后进入的窗体,该窗体主要包括管理员可以对图书进行管理的一些操作,浏览图书,添加图书,查询图书等和对读者的一些浏览、查询、修改信息等操作。 图2-2 管理系统主窗体 在此窗体上,主要添加了标签和按钮,该5个按钮可以链接到对图书进行详细操作的5个窗体上,分别是Allinfo ,AddInfo, ModifyInfo, SearchInfo, DeleteInfo。“读者信息管理”按钮可以链接到对读者信息管理的窗体上。在读者信息管理的窗体上可以对读者的基本信息进行管理。为了美化窗体,在中间加了4个标签。 2。4浏览图书信息 浏览图书信息是对数据库中的图书信息进行全部浏览显示,显示书号,书名,是否借出,出版日期,作者,图书分类,系别,出版社,备注. 图2-3 图书信息 rs=stmt。executeQuery(”Select * From StuInfo”); 通过和Access数据库的连接之后,通过Selecet语句从数据库中显示全部信息。 while(rs。next()) { 处理查询过程 String 书号 = rs.getString(”书号"); String 系别 = rs.getString("系别”); String 出版社 = rs。getString(”出版社"); String 书名 = rs。getString(”书名"); String 借出 = rs.getString("借出"); String 出版日期 = rs.getString("出版日期"); String 作者 = rs.getString(”作者"); String 图书分类 = rs.getString("图书分类"); String 备注 = rs。getString("备注"); } 2。5添加图书信息 添加图书信息窗体主要是对入库新书的信息添加,在此窗体中,需要把图书的详细信息添加完整,格式添加正确,否则会弹出信息不全而不能添加如数据库的提示. 图2—4 添加图书信息 在实现添加图书窗体的过程中,首先得定义标签、按钮以及文本框等,然后给各个控件添加文本,位置,颜色等属性的设置,设置完之后将所有控件添加到窗体上,并设置为可视,把基本的界面设计完之后,开始连接数据库(JDBC),通过SQL语句连接Access数据库,在向数据库中写入信息之前,还得先通过学号判断输入入的信息在数据库中是否存在,如果存在则提示记录已经存在,请输入其他学号。判断语句如下: 从数据库的图书信息表中取得第一条记录,并判断 ResultSet rs = stmt。executeQuery("select * from StuInfo where 书号='”+ jtextfield1。getText() +"’ "); 设置循环,直到最后一条记录,如果存在和输入的记录学号相同的信息,则提示警告.并返回重新输入 if(rs.next()) { JOptionPane。showMessageDialog(null, "此书号已经存在.”, "警告”, JOptionPane.WARNING_MESSAGE); return; } 如判断学号在数据库中无重复记录,则将新输入的信息添加到数据库中。 stmt.executeUpdate(”insert into StuInfo (书号,系别,出版社,书名,借出,出版日期,作者,图书分类,备注values(’"+jtextfield1。getText()+”’,’”+jcombobox3。getSelectedItem()+”','”+jtextfield5.getText()+”',’”+jtextfield2.getText()+”','”+jcombobox1。getSelectedItem()+”','"+jtextfield3.getText()+”’,’”+jtextfield4.getText()+”',’"+jcombobox2.getSelectedItem()+"’,'”+jtextarea.getText()+”’)”); 在添加完一条记录后,会弹出添加信息成功提示,并且会调用显示图书信息窗体,可以在此窗体中查看刚刚添加的图书信息,并且添加图书信息窗体不会自动关闭,如果想继续添加下一本图书信息可以不用再去调用添加图书信息窗体,直接可以进行添加了。当把所有的图书信息添加完之后,可以点关闭,将添加图书信息窗体关闭. 2.6修改图书信息 在实现修改图书信息的模块中,第一步先得通过学号查询,找到要修改的图书记录,再进入修改窗体进行对记录的修改.如找不到,则提示“找不到对应信息”。 图2-5修改图书信息 通过对图书的查询,如果找到要修改的图书信息,进入修改窗体,对记录进行修改,书号字段默认为不可修改项,因为书号是第一次输入图书信息时,已经确定的字段,在Access数据库中为主关键字,所以不可以修改。其他项都为可修改字段.在修改记录的设计中,其实是将原先的记录删除掉,然后在将修改完的记录添加进数据库,在添加之前把记录删除: stmt.executeUpdate("delete * from StuInfo where 书号 = ’"+jtextfieldNum。getText()+”’”); 这样在添加的时候就不会出现重复记录了.在输入修改图书信息和添加新书信息时一样,每项都得输入,并且格式输入正确(特指出版日期为日期格式MM-DD—YY),将信息都输入完后,就可以将输入的修改信息添加到数据库中了,具体添加的方法和上面的添加新书信息模块中的添加语句一样,在此略过。在把修改后的信息添加到数据库中之后,弹出 “修改信息成功”对话框。具体实现如下: JOptionPane。showMessageDialog(null, ”修改信息成功!"); 2。7查询图书信息 在实现查询图书信息的模块中,第一步先得通过学号或者书名条件查询,两者的关系是或的关系,但是当两者都输入的时候就是且的关系了。其中可以有一个为空,但是不可以都为空。两个都为空或找不到,则提示相关错误信息.找到要修改的图书记录,再进入修改窗体进行对记录的修改.如果找到则显示找到的信息。 图2—6 查询图书条件 通过输入的条件在数据库中查找相关的记录.具体步骤如下: if(jtextfieldNum.getText()。trim()。equals("”)||jtextfieldName.getText()。trim().equals(”")) rs = stmt。executeQuery(”select * from StuInfo where 书号='"+jtextfieldNum。getText()+”’ or 书名=’"+jtextfieldName。getText()+”'”); else if(jtextfieldNum.getText()。trim().equals(””)&&jtextfieldName。getText().trim().equals("”)) JOptionPane。showMessageDialog(null, ”请至少输入一个条件”, ”警告",JOptionPane.WARNING_MESSAGE); else rs = stmt.executeQuery(”select * from StuInfo where 书号='"+jtextfieldNum。getText()+"’ and 书名='”+jtextfieldName。getText()+”’") 如果输入的条件中(书号或书名)有一项为空则可以继续进行下面的操作,和数据库连接,从数据库中查找符合条件的记录。并通过显示窗体显示。显示窗体和修改图书信息的窗体一样,只不过没有修改功能。把查询到的符合条件的一条记录通过显示图书信息窗体显示出来。 2。8删除图书信息 在图书信息的删除模块中,首先通过学号查询,查询条件不可以为空,如果为空,则提示错误信息.输入学号后,系统连接数据库,从数据库中查找符合条件的记录。如果没找到,则提示没有找到符合条件的信息.如果找到,则首先调用显示记录窗体,让用户验证是否为准被删除的记录。如果是,则确定删除,在确定删除之后,还会弹出删除确定提示对话框: 图2-7删除确定提示 if(JOptionPane.showConfirmDialog(null, "确实要删除该生信息吗?\n删除的信息将不能恢复,继续?",”删除确定", JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE) ==0) stmt。executeUpdate("delete * from StuInfo where 书号 = '”+jtextfieldNum。getText()+”'"); JOptionPane。showMessageDialog(null, ”删除信息成功!"); Allinfo allinfo = new Allinfo(); 当删除成功后,会弹出“记录已删除”信息提示. 2.9读者信息管理 读者信息管理模块是在设计完图书信息管理模块后加上去的,其包括的几个模块和图书管理的基本相同,在Access数据库中又加入了一个读者信息表,将读者的基本信息存在此表中,在读者信息管理下的几个模块中用到的信息记录也都是从此表中调用. 图2—8 读者信息管理 读者信息管理模块也包括五个窗体。浏览读者信息、添加读者信息、修改读者信息、查询读者信息、删除读者信息设计此模块时,基本是复制上面的图书管理模块的代码,将其中连数据库的地方改了改,其详细步骤和实现过程略过。此窗体是通过图书管理窗体界面上的一个按钮连接过来的。在调出此窗体时,原先的图书管理窗体并不关闭,使此窗体在图书管理窗体之上。看起来也比较美观. 2。10 Access数据库 基本的界面和JAVA程序都设计好了,数据库的设计也是必不可少的。在此次课程设计中,根据老师的要求还有自己所学的知识,本人采用的是Access数据库管理。Access使用标准的SQL(Structured Query Language,结构化查询语言)作为它的数据库语言,从而提供了强大的数据处理能力和通用性,使其成为一个功能强大而且易于使用的桌面关系型数据库管理系统和应用程序生成器。 一个Access数据库中可以包含表、查询、窗体、模块以及数据访问页.Access数据库使用单一的*。mdb文件管理所有的信息,这种针对数据库集成的最优化文件结构不仅包括数据本身,也包括了它的支持对象。 关于Access数据库的具体操作过程,在此就不具体一一列出了。在此次的图书管理系统中,需要建立三个表,分别是图书信息表、读者信息表和管理员信息表。其中管理员信息表中只列了账号和密码两个字段,而图书信息和读者信息表中,分别列出了关于图书和读者的详细信息。 图2-9 Access数据库 2。11本章小节 本章为最主要的一章,介绍了此次课程设计实现的详细步骤,通过对图书管理系统的分析以及设计前的模块设计,从而更具体的逐步完善各个模块,基本完成了图书管理系统的管理员管理图书和读者信息部分。 第3章 设计中遇到的重点及难点 3。1重点及难点 本次课程设计中遇到的重点是各个窗体中的控件的定义以及控件位置、大小、颜色等属性的设置,在定义和修改控件属性以及美化窗体方面花的时间比较多,在每添加一个控件,如标签,都得在程序开始定义控件,以及在后面的设置属性和将控件添加和显示到窗体上。例如定义一个按钮,那此按钮在整个程序中必须有以下几步: 按钮控件的定义 private JButton AddInfo = new JButton(); 按钮控件的属性设置 AddInfo.setText(”添加图书信息”); AddInfo。setVisible(true);—设置为可见状态 AddInfo。setBounds(new Rectangle(250, 526, 127, 33));—设置控件位置 AddInfo。setForeground(Color.white);—设置字体颜色 AddInfo.setBackground(Color.black);—设置背景颜色 为按钮控件添加事件监听 AddInfo.addActionListener(new MainJFrame_actionPerformed(this)); 将按钮控件添加到主窗体上 ContentPane。add(AddInfo); 本次课程设计中遇到的难点是为每个按钮控件添加时间监听和异常处理部分,在此就不详细举例了。 3.2本章小节 本章总结了在此次课程设计中的重点和遇到的难点,总的来说基本上都解决了. 第4章 本次设计中存在不足与改良方案 4。1不足与改良方案 由于时间关系,本次所设计的图书管理系统只实现了管理员管理图书、读者信息的功能,而未能实现借阅者的借阅和图书查找等功能。 改良方案: 在读者信息和图书信息之间建立起连接,在读者信息中加入读者借过的图书,以及借阅的时间和归还期限。相应的在图书管理模块中也可以添加入借阅此书的读者的信息。还有就是在查询图书信息模块,按照书号查找可以找到相应的图书信息,但是忽略了如果按照书名去查找,会出现多本图书书名的情况,而在查询部分只是显示了一本图书的信息,应该在查询图书部分加入符合相同条件的图书信息。 4。2本章小节 本章为此次课程设计最后一章,简短的说明此次课程设计中存在的不足以及改良方案。相信在以后的学习和实践中会得到更好的完善. 结 论 本课程设计完成的是一个图书管理系统,包括管理员管理图书信息和读者信息,分别有添加、删除、查阅等功能。 在本次课程设计的过程中,详细阐述了整个应用系统的设计思路,并对各部分设计周期进行了详尽的分析,最终达成了一个完整的设计方案;在文章的最后,还根据数据库系统的调试结果,提出了可以进一步改进的部分,以便在以后的学习工作中得到更好的完善.以及在投入实际应用后系统可以更加稳定可靠的工作。 通过一个月的课程设计,完成了“图书管理系统"的设计,更重要的是又复习了一遍Java知识,看了许多关于Java的书,不仅丰富了知识,而且从中学到了编程思想,相信通过这次课程设计,对以后的学习和程序设计会有很大的帮助. 参考文献 [1] 陈国军,《Java2程序设计基础》,清华大学出版社。2006。1 [2] 薛为民,《Java应用教程》,清华大学出版社。 2005。9 [3] 黄梯云,《管理信息系统》,高等教育出版社。 2005。6 [4] 许文宪,《Java程序设计教程与实训》,北京大学出版社。2005。9 [5] 李发致,《Java面向对象程序设计教程》,清华大学出版社。2004。5 [6] Bruce Eckel,《Java编程思想》,机械工业出版社。2002。1 致 谢 在本次课程设计中,宗永升、徐楠、张东亮老师对此提出了指导与帮助。在此特别表示感谢! 指导教师评语 指导教师: 年 月 日 答辩委员会评语 答辩委员会签字: 年 月 日 18- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 信息管理 系统 课程设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文