课程设计(论文)基于JAVA的图书馆系统设计与开发_第1页
课程设计(论文)基于JAVA的图书馆系统设计与开发_第2页
课程设计(论文)基于JAVA的图书馆系统设计与开发_第3页
课程设计(论文)基于JAVA的图书馆系统设计与开发_第4页
课程设计(论文)基于JAVA的图书馆系统设计与开发_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本科课程设计(说明书)题目基于java的图书馆系统设计与开发 学 院 机械自动化学院 专 业 工业工程 学 号 学生姓名 指导教师 日 期 2011年6月30日 摘 要书籍是人类不可缺少的精神食粮,图书馆管理系统是一些单位不可缺少的部分,尤其是对一些学校来说尤为重要。所以图书馆管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理图书、期刊、试卷合订本等,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着人类社会的发展,人类对知识的需求也不断地增长。在这种形势下,书籍就渐渐地成

2、为人们获取并增长知识的主要途径,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学地管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展,因此,开发一套图书管理系统就成不可少了。 本论文主要是针对图书馆图书管理的研究,介绍了系统建立的目的、系统分析、系统结构、系统设计、系统实施,以及使用开发工具java的好处和access简单易用等。系统的建立将支持图书管理人员对图书各类信息进行快捷、准确、方便的查询;支持图书管理人员对图书的录入、修改、删除与统计、查询。管理员轻而易举的就能使用该软件来达到对图书馆内各类图书信息的管理。关键词 java 、access、面向对象、图书管理引言

3、宾馆管理管理系统是一个宾馆不可缺少的部分,它的内容对于宾馆的决策者和管理者来说都至关重要,所以宾馆管理系统应该能够为用户提供充足的信息和快捷的查询手段。一直以来人们使用传统人工的方式管理宾馆内的相关数据,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于记录的查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 在计算机应用的领域,数据库技术的应用占有相当重要的地位。数据库应用系统开发的目标是建立一个满足用户长期需求的产品。开发的主要过程为:

4、理解用户的需求,然后,把它们转变为有效的数据库设计。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。 作为计算机应用的一部分,使用计算机并结合数据库技术对宾馆信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高宾馆管理的效率,也是企业的科学化、管理的正规化,与世界接轨的重要条件。因此,开发这样的管理类软件是一件很有必要的事情,在下面的各章中我们将以开发一套宾馆管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。 本软件针对图书馆的业务范围及工作特点,设计了读者管理、图书管理、借阅管理

5、、新书入库管理、修改图书信息等5个子系统,这5个子系统包括了图书馆的主要业务,可以全面实现对图书馆采购、编目、检索、统计和流通等业务的计算机管理,使图书馆管理水平和业务水平跃上一个新的台阶。应用本系统可以在计算机上灵活、方便地管理图书,从而大大的提高了处理速率,使管理更加现代化。本系统是根据实际情况和具体内容,按照一定的要求,科学、合理的进行系统分析、设计,具体包括菜单设计、数据输入、查询、删除、修改等设计。从而使本系统完全能满足经济性、灵活性、系统性及可靠性的要求。第一章 业务流程设计和开发工具2.1 业务流程设计数据流图如图1-2所示。用户登录退出系统客房信息用户信息主界面入住/退房操作综

6、合查询2.2 开发工具的选择本系统采用sql创建后台数据库,前台开发工具采用的visualstudio 2005,编程语言为c#,程序采用c/s结构。第三章 系统数据库设计与实现数据库设计得合理与否,对数据库的完整性、安全性、程序运行的效率和程序设计的复杂程度有着十分密切的关系。数据库设计的内容包括数据库管理系统的选择、数据实体的确定、数据实体的e-r图和数据库的实现。3.1 系统数据库设计 1. 实体e-r图 根据图书管理系统分析与功能设计,图书信息管理系统中主要包括客房信息实体、客户信息实体、入住信息实体等。 客房信息实体包括表征客房基本特征的数据和由于管理需要而记录的一些数据,有三个属性

7、构成。该实体的e-r图如图1-3所示。其中“客房编号”作为本实体的主键。客房(room)room name roomidroomremain图1-2 客房信息实体e-r图读者信息实体标示一个读者的个人特征数据和该读者在图书馆的借阅状态信息,有10个属性构成。该实体的e-r图如图1-3所示。其中“客户名”为主键。客房(room)clientname roomremain图1-3 客户信息实体e-r图入住退房信息实体的e-r图如图1-4所示。入住/退房操作(live)clientname roomidroomremainfactcheckdatecheckdateindate图1-4 入住退房信息

8、实体e-r图 2. 概念结构设计 根据图书信息管理系统e-r图设计系统数据库。本系统数据库名为“hms”,其中包括三个数据表,分别存放客房信息、客户信息、入住记录。1)图书信息表:表名为:“room”,用于保存所以客房信息,其结够如图1-5所示。图1-5 room表的结构2)客户信息表:表名为:“client”,用于保存可以在本馆入住的所有客户信息,其结果如图1-7所示。图1-7 client表的结构4)入住记录表:表名为:“liverecord”,用于保存每个房间的入住信息,入住记录表的结够如图1-8所示。图1-8 liverecord表的结构2. 逻辑结构设计根据3.1.1所建的图,建立各

9、表之间的关系如下图1-9:现在来分析一下这些关系模式,由于在设计关系模式时是以现实存在的实体为依据的,而且遵循一个基本表只描述现实世界的一个主题的原则,每个关系模式中的每个非主码属性都完全由主码唯一确定的,因此上面所列出的关系模式都是第三范式的关系模式。3.2 数据库的实现选择“开始”“程序”“microsoft sql server”创建数据库。数据库名称为“hms”,并输入表中的数据。第四章 开始窗体和主窗体设计3.1 开始窗体首先,启动程序“microsoft visual studio 2005”,选择“文件”“新建”“项目”,打开“新建项目”对话框,输入项目名称为“hms”,并指定文

10、件位置。将项目中的默认添加的第1个windows窗体文件名称改为“initialform.cs”,并将其作为开始窗体。在开始窗体中先进行界面设计,然后再编写其相应的事件方法代码,开始窗体的执行效果如图1-10所示。图1-10 开始窗体的运行效果代码实现如下:using system.data;using system.drawing;using system.text;using system.windows.forms;namespace hms public partial class initialform : form public initialform() initializeco

11、mponent(); private void btnhms_click(object sender, eventargs e) form fmain = new form1(); fmain.showdialog(); private void initialform_load(object sender, eventargs e) 3.2 主窗体利用工具栏可以快速执行系统中的常用命令。工具栏的设计步骤是:在主窗体上添加groupbox控件,在上面依次添加5个button,设置每个button的displaystyle属性均为“text”,运行效果如图1-11所示。图1-11 主窗体的运行效

12、果图主窗体代码的实现如下:using system;using system.collections.generic;using system.componentmodel;using system.data;using system.drawing;using system.text;using system.windows.forms;namespace hms public partial class mainform : form public mainform() initializecomponent(); /打开客户信息窗体 private void btnclient_clic

13、k(object sender, eventargs e) form fclient = new clientform(); fclient.showdialog(); /打开客房信息窗体 private void btnroom_click(object sender, eventargs e) form froom = new roomform(); froom.showdialog(); /打开客户入住退房窗体 private void btnlive_click(object sender, eventargs e) form flive = new liveform(); flive

14、.showdialog(); /打开综合查询窗体 private void btnquery_click(object sender, eventargs e) form fquery = new queryform(); fquery.showdialog(); /退出系统 private void btnexit_click(object sender, eventargs e) this.close(); private void mainform_load(object sender, eventargs e) private void btnclient_click_1(object

15、 sender, eventargs e) form fclient = new clientform(); fclient.showdialog(); private void groupbox1_enter(object sender, eventargs e) 分析:单击每一个控件时,需将子窗体显示出来,单击工具栏上的按钮时,可以调用菜单项的click事件方法代码。第五章 主要功能模块的实现4.1 登录窗体设计登录窗体作为系统的启动窗体,用于核对用户和密码,只有图书馆工作管理人员才能登录到本系统进行操作。登录窗体的设计比较灵活,只要能实现用户和密码的验证即可,本系统将其设计成为一个小窗体

16、,其运行界面如图1-12所示。登录窗体文件名设计为“form1.cs”.1. 界面设计:图1-12 登陆窗体运行效果在该窗体上添加2个label、1个combobox、1个textbox、2个button控件,其中登录窗体及其主要控件的属性设置如表1-1所示。表1-1 登录窗体及其主要控件的属性设置窗体及其控件类型属性名称属性值说明formnameform1窗体名称text登录窗体的标题文本maximizeboxfalse窗体的最大化失效startpositioncenterscreen窗体启动时位于屏幕中心formborderstylefixedsingle窗体的大小固定comboboxna

17、mecbxusername选择登录用户名textboxnametxtpassword输入用户登录密码passwordchar*密码替代显示字符buttonnamebtnok“确定”按钮btncancel“取消”按钮2. 代码设计:using system;using system.collections.generic;using system.componentmodel;using system.data;using system.drawing;using system.text;using system.windows.forms;using system.data.sqlclient

18、;namespace hms public partial class form1 : form public form1() initializecomponent(); private void btnok_click(object sender, eventargs e) if (string.isnullorempty(this.txtclientname.text.trim() | string.isnullorempty(this.txtclientpassword.text.trim() messagebox.show(用户名或密码不能为空!); return; /判断是否存在此

19、用户 if (usercheck(this.txtclientname.text.trim(), this.txtclientpassword.text.trim() this.visible = false; form mainform = new mainform(); mainform.showdialog(); this.close(); else messagebox.show(用户名或密码错误,请重新输入!); / / 检测用户 / / 用户名 / 密码 / private bool usercheck(string username, string password) dal d

20、al = new dal(); /操作字符串 string txtsql = select * from client where clientname = + this.txtclientname.text.trim() + and clientpassword = + this.txtclientpassword.text.trim() + ; /得到查询结果 datatable dt = dal.executeselect(txtsql); if (dt.rows.count != 0) return true; else return false; private void btnca

21、ncel_click(object sender, eventargs e) this.close(); private void form1_load(object sender, eventargs e) private void label1_click(object sender, eventargs e) 4.2 客户信息窗体设计客房信息管理模块的内容包括新增、修改和删除客户信息等。该功能模块主要负责客户信息的相关操作,保证数据库中的完整、规范和准确,使用户可以方便快捷地来管理客房信息。该模块主要操作针对数据库的的客户信息表“”进行添加、修改和删除记录。1. 客户信息窗体,其运行效果

22、如图1-13所示。窗体设计:图1-13 客户窗体的运行效果代码清单:(略)2. 删除客户信息窗体,其运行效果如图1-14所示。窗体设计:图1-14 删除客户的运行效果代码清单:(略)3. 修改客户信息窗体,其运行效果如图1-15所示。窗体设计:图1-15 修改客房窗体的运行效果代码清单:(略)4.3 客房信息窗体设计其运行效果如图1-17所示。新增、修改和删除操作同客户信息窗体。窗体设计:(略)代码清单:(略)4.4 入住信息窗体设计入住信息模块的本系统的核心模块,包括入住、退房和入住记录。其运行效果如图1-17所示。窗体设计:图1-17 入住信息窗体的运行效果4.5 综合查询处理模块设计查询

23、功能是十分重要的功能,客户需要查询他所入住和结算的的房间,宾馆工作人员需要查询本宾馆的客房、入住信息。查询功能仅仅需要显示符合条件的数据,并不需要对数据进行复杂的处理。系统设计的查询模块包含以下3方面。1) 客户信息查询:2) 入住信息查询:3) 客房信息查询:其运行效果如图1-18所示。窗体设计:图1-18 综合查询窗体的运行效果代码设计:(略)第六章 结束语在大三下学期的最后两个星期里,本人独立完成了这个比较简单的宾馆管理信息系统,通过这个系统的开发,让我初步了解到了做一个项目的全过程。在第一个星期,我处于摸索状态,总算弄明白,经历了从系统规划、分析、设计到后台数据库的搭建和前台开发的一个相对比较完整的过程。在这过程中不仅让我学到了许多专业知识而且也充分发挥了个人的分析问题、解决问题的能力以及实际动手能力。在第二个星期里,是整个如火如荼的实践操作系统的过程。我学到了关于sql数据库后台与visual studio 前台的连接,通过历次犯错误,我逐步深刻体会如datagrid、groupbox、label等控件的作用及相关属性。关于c#编程,我曾出现过运行时出现70多个错误,并

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论