Java平台swing mysql实现图书管理系统总结分析方案.docx
《Java平台swing mysql实现图书管理系统总结分析方案.docx》由会员分享,可在线阅读,更多相关《Java平台swing mysql实现图书管理系统总结分析方案.docx(16页珍藏版)》请在冰点文库上搜索。
Java平台swingmysql实现图书管理系统总结分析方案
计算机学院
工程实践Ⅰ(Java)
总报告
图书馆管理系统
小组序号:
003
组员姓名:
龙宇、向浩
年级:
大二
指导教师姓名:
汤蓉
提交日期:
2013年06月22日
1引言
随着计算机及网络技术的飞速发展,Internet/Intranet应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息系统的作用也越来越大。
图书馆在正常运营中总是面对大量的读者信息,书籍信息以及由两者相互作用产生的借书信息,还书信息。
因此图书管理信息化是发展的必然趋势。
用结构化系统分析与设计的方法,建立一套有效的图书信息管理系统,可以减轻工作,将工作科学化、规范化,提高了图书馆信息管理的工作质量因此根据图书馆目前实际的管理情况开发一套图书管理系统是十分必要的。
1.1图书管理的现状
一直以来人们使用传统的人工方式管理图书馆的日常工作,对于图书馆的借书和还书过程,想必大家都已很熟悉。
在计算机尚未在图书管理系统广泛使用之前,借书和还书过程主要依靠手工。
一个最典型的手工处理还书过程就是:
读者将要借的书和借阅证交给工作人员,工作人员将每本书上附带的描述书的信息的卡片和读者的借阅证放在一个小格栏里,并在借阅证和每本书贴的借阅条上填写借阅信息。
这样借书过程就完成了。
还书时,读者将要还的书交给工作人员,工作人员根据图书信息找到相应的书卡和借阅证,并填好相应的还书信息,这样还书过程就完成了。
随着近年来信息技术及计算机网络技术的不断发展,图书馆也先从传统的图
书馆发展到自动化图书馆,再发展到今天的数字图书馆,这些变化使得图书馆的形象越来越现代化,人们查找资料也更加方便。
对于一些小图书馆和一些图书室来说,由于工作人员比较少,长期以来,作为图书馆的主要工作—图书借阅一直未能很好地开展。
在平常的图书借阅工作中,由于大部分读者不熟悉图书馆藏书,且对图书排架分类的不了解,往往花费很长时间才能找到其所需的书。
为提高管理效率,更好地为读者服务,利用已有的办公局域网络条件,将馆藏书籍做成基于WEB的查询系统,实现图书在一个单位的网络内甚至Internet上查询,可使图书查询和借阅变得更加方便快捷,从而使图书室的工作效率得到明显提高。
传统的图书管理模式其最大的特点是手工;首先要把买来的图书资料登记到资料本上,再给每本书分类贴上标签及制作和标签相对应的图书分类卡片,最后把图书分类卡片按类别分别放置在文件柜里。
对于有学生(教师)证的学生(教师)来说还要对他们资料作一定的记录。
并且在人们来借书的时候,首先持证件者要去存放图书分类卡片的文件柜里查找想借的书是否在架,如果卡片存在,再按照图书分类卡片在相应的书架上找到需要的图书,然后登记持证件者的借还书时间和在书签条上写下借还书记录,之后把借书证留在那里;还书的时候,相对应的消去出借记录;这样做起来比较麻烦,比较费时间。
传统图书管理的特点是一直以来,中小型书店、中小学的小型图书馆及各高校图书馆和资料室使用传统的人工方式管理图书档案、会员档案。
这种管理方式存在着诸多缺点,如:
手续繁琐、工作量大、效率低下、出错率高等,同时给对大量资料的查询、更新及维护都带来不少困难。
1.2现有图书管理系统的概述
在试用了一些个图书管理系统和查阅了大量相关资料文献的基础上,发现那些系统在几个方面已经不符合时代的要求,由于设计人员及其所用的工具的不同,有VisualBasic6.0、VisualForPro6.0、PowerBuilder等,再加上这些图书管理系统设计的时间也不一样,所用具体场合也有区别,因此在功能上除了图书资料管理所需的基本功能之外也有所不同。
经过比较总结他们都实现了以下图书管理的基本功能:
1、图书检索模块:
是图书管理系统的重要模块之一,是读者快速查询图书的途径。
2、图书管理模块:
是图书管理员操作模块,读者是无权进入的。
本模块由借出图书登记、归还图书登记和续借图书登记子模块构成。
3、数据维护模块:
是由图书管理员控制的模块,它由增加、修改和删除读者,增加、修改删除图书,浏览修改读者、浏览修改图书等程序组成。
4、数据统计模块:
由读者统计、图书统计、借出图书分类统计、到期末归还图书读者统计几部分组成。
这些系统解决了以前的那种管理方式所存在着的诸如手续繁琐、工作量大、效率低下、出错率高等缺点,设计出的系统能使读者快速检索到自己喜爱的书,图书管理员能减轻工作量。
但是鉴于开发工具和开发当时的科技发展水平所限,再加上历史发展到今天,人们的生活环境已经发生了改变,大家对于图书查询这方面的要求也更高。
比如在一个局域网内,大家希望能在本台电脑上就能查找自己想要的图书,而不用跑到图书馆或图书室里去用那里的电脑查询,这就需要一个网络化的联机查询系统。
1.3选题的目的意义
随着社会的进步,的、意义信息技术的广泛应用,数字化管理的优势日趋显著。
针对中小型图书馆或图书室管理落后的情况,设计实现一个图书信息管理系统,通过与计算机的结合使用对中小型图书馆或图书室的各种图书信息进行管理可以给管理员和用户带来以下不同的方便:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高工作效率,也是图书馆等部门管理科学化、正规化的重要标志之一。
而且计算机管理的成本不断降低。
因此,开发一套这样的中小型图书管理软件已经很有必要,并且实现研究服务于实践的原则。
1.4图书管理系统的可行性分析
本次毕业设计题目:
“学校图书管理系统的开发”主要目的是利用数据库软件编制一个管理软件,用以实现图书、读者以及日常工作等多项管理。
同时对整个系统的分析、设计过程给出一个完整论证。
图书管理系统是一种基于集中统一规划的数据库数据管理新模式。
在对图书、读者的管理,其实是对图书、读者数据的管理。
本系统的建成无疑会为管理者对图书管理系统提供极大的帮助。
本系统的设计主要从以下几方面做起:
系统业务流程分析、系统的功能设计、系统的数据库结构设计等。
作这些工作需对数据库知识有足够认识,并深入的了解Java的使用和管理系统的相关知识。
在信息时代的今天,人类需要对在政治、经济、军事、文化、科研、教育等领域产生的大量信息进行管理,并对数据进行加工处理,数据库技术则是信息管理与数据处理的先进技术。
随着信息量的不断增加,作为计算机的三大主要应用(科学计算、过程控制和数据处理)之一的数据处理,已迅速上升为计算机应用的主要方面,数据库技术则成为人们日常生活中处理数据不可缺少的有力工具,并且现代的信息管理系统几乎都以数据库技术作为核心。
现在大多数的图书管理方式为手工处理,重复劳动多,劳动强度大,而且容易出错,新系统的使用能否可以很好的解决这些问题要看系统的可行性,可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。
系统的可行性分析有以下几个方面:
(1)技术可行性:
处理速度快、准确通过权限的设置,数据的安全性好、方便查询、借阅管理等。
(2)经济可行性:
系统建设不需要很大的投入、可缩减人力投入。
(3)运行上可行性:
本系统作为一个小型的图书馆信息管理系统,所耗费的
资源非常的小。
(4)从各种社会因素可行性分析:
可降低工作人员工作强度,提高效率,会
得到学校工作人员的一致同意的。
综上所述通过可行性分析认为新系统的开发方案切实可行,可进行开发。
1.实现图书馆对外借书,还书的简易操作,提高图书馆对最平凡工作的效率。
2.实现图书馆对所藏图书的按类别,书名等多方面的查询,最大的方便读者和图书馆工作人员对所需图书的查询。
3.建立图书馆外借读者数据库,方便工作人员对读者进行有效管理。
4.建立图书馆工作人员数据库,限定每个工作人员对软件操作的权限,最大限度的保护数据库。
5.实现图书馆对新书入库的简单处理,并且建立书籍档案,方便进货。
2需求分析
A:
图书馆管理系统是该系统软件的重要内容之一,该子系统为图书馆的库存书籍的动态调整提供了决策依据,有利于及时对有大量需求的新书进行订货入库。
它的主要功能包括:
新书入库,借书,还书,馆内图书详细信息,图书查询,读者管理,馆内图书统计,读者信息管理,图书馆工作人员权限管理,名称设计,数据库备份等功能。
下面是外部读者查询系统的主要功能的简单描述:
2.1图书管理:
这是图书馆最重要的模块之一,它将对图书馆中的书籍进行管理操作,所有的原始数据输入都是在这里实现的,有了这里的数据输入,才能开始以后的诸如借书、还书等操作。
1.新书入库管理:
该功能允许用户输入图书单,在输入过程中,程序自动生成图书单编号以加以区分两次不同的入库书单,同时程序也检查输入的合法性,并自动记录当日入库的图书。
当日入库图书查询:
该功能允许用户对当日的入库书单针对不同条件进行查询,并且提供二次修改,避免出错。
2.2业务管理:
这是图书馆使用频率最高的模块,因此他在功能上应该直观明确,在操作上应该简单易用。
1.图书借阅:
该功能要求用户输入图书编号或者图书条码,并且检查输入合法性,然后程序动态生成该书的详细信息;再输入借书证号,并且检查输入合法性,然后程序动态生成该读者的详细信息;系统记录借书的经手人,最后由借书按钮实现操作。
2.图书归还:
与图书借阅类似,追加图书超期罚款功能,自动根据预设值计算出罚款金额。
2.3人员档案管理:
这是针对读者和图书馆工作人员而设计的一个人士管理模块,它将完整的记录读者的信息,以及图书馆工作人员的信息,并且他还具有限制图书馆工作人员操作权限的功能,最大限度的保证了数据的安全。
1.读者管理:
记录读者的详细信息,并提供增加、撤除、查询等操作。
2.图书馆工作人员管理:
在读者管理子模块的基础上增加权限管理功能,保证数据安全。
四、名称设计:
这是一个很具个性化的功能,实现很简单,但非常吸引人,你可以任意为你的管理系统命名。
B:
外部读者查询系统,这是一个面向读者的综合查询系统,采用与管理系统相同的数据库,具有唯一的功能:
查询。
他可以按照读者的要求,用不同方法对所藏书籍进行查询,并能进行书名的模糊查询,还可以查询读者所借书的到期日,和观看读者本人的详细资料,力争最大的满足读者的需求。
性能要求:
对新书入库单处理及查询;图书查询;借书还书速度应较快
登录仓库管理系统时应输入密码,以保证系统的安全性。
系统要有较强的兼容性,能在各种PC机上正常运行。
在系统运行异常及数据文件损坏时能给出出错提示,保证系统的可靠性。
3系统设计与分析
3.1设计目标
在系统设计过程中,最重要的是根据需求分析及用例模型构建系统静态模型和动态模型。
通过运用计算机建立本系统,实现图书管理的系统化、规范化和自动化,实现对图书资料的集中统一的管理,实现界面设计友好、美观,数据存储安全、可靠,实现管理员对student表、manager表、book表的增删查改功能,实现学生的借书、还书、借书查询、还书查询等功能。
3.2业务流程分析
系统共有两个权限用户,包括管理员和学生,两个权限用户都有独自的功能模块,管理员权限管理整个系统,用户权限受管理员权限控制。
管理员模块
管理员拥有最高功能权限,主要功能包括对管理员数据、学生数据、图书数据的管理,也就相当可以对整个图书馆管理系统的所有数据进行管理,包括数据的增添、删除、查询、修改。
对于系统管理员可以对图书馆信息进行修改更新操作,对系统用户进行添加、修改、删除、权限设置等操作,对图书馆的办证参数进行修改维护等操作功能。
学生模块
主要功能包括借阅图书、还阅图书、借书查询和还书查询,学生用户可对图书馆的图书进行借阅,但也必须归还,学生借书的时候就该有查询图书的功能,搜索整个系统的图书数据,找到可借的学生需要的图书,并做记录。
对于读者在本系统的应用下可实现按照各种方式(如:
书名,编号,作者)查询图书馆的藏书请客,方便的借阅图书,续借图书,归还图书,能够查询自己的借阅图书情况。
系统功能结构图
3.3数据库设计
根据系统需求分析的结果:
结合关系数据库MYSQL的特点,系统设计了5张数据库表,即学生student表、管理员manager表、book表。
以下是各表的详细情况:
Student表:
manager表:
book表:
studentborrow表:
studentreturn表:
4系统实现
4.1系统开发运行环境
系统开发环境:
MyEclipseJavaEnterprise7.0
系统开发语言:
Java
运行平台:
Windows7
数据库:
MySql
4.2界面的实现
4.2.1登陆界面
当用户输入用户名、密码,系统自动将输入的信息和相关数据表中的内容进行比较,如果该用户输入的内容和数据表中的内容相符,则通过验证,此次登录成功;否则登录失败。
用户只有成功登陆系统后才能进行一系列的操作,如下图所示。
4.2.2管理员界面
进入管理员界面后,可选择对学生信息、图书信息、管理员信息进行管理,分别是对各个信息数据的增加、删除、查找、修改。
4.2.3学生界面
学生界面是学生所拥有的功能面板,学生可对图书馆内的图书进行借阅、查询功能,也需要退还图书。
4.3系统主要模块的实现
4.3.1密码保护
4.3.2模糊查询
4.3.3登录界面
4.3.4管理员操作
4.3.5新近图书管理
4.3.6读者信息管理
4.3.7读者查询
4.3.8图书借阅
4.3.9查询相关借还信息
5系统测试
管理员登陆界面:
管理员操作权限
读者信息管理
读者借阅图书
图书查询结果显示
6特殊问题及解决方法
6.1在开发过程中遇到的问题及解决办法。
6.1.1模糊查询
1)因为在不能准确输入一个准确的信息的情况下就不能准确的信息出来,在这里就应该利用一个可以不用完全的输入信息的情况通过一种模糊查询的方式进行显示和操作
2)解决方案:
通过咨询咨询相关的学长我们知道在Java中我们还有一种数据操作方式就是模糊查询,在不用准确的信息的情况下就可以根据用户输入的部分信息就可以扫描数据库响应的表格实现数据的查找现实进行的操作。
3)解决结果:
在单独设置一个文本框中输入响应的关键字根据后台管理程序读取关键字进行响应的扫描将结果显示出来。
PreparedStatementpstmt=conn.prepareStatement(sql)。
pstmt.setString(1,"%"+STbookname+"%")。
6.1.2避免被恶意操作
因为在登录中我们是通过前台的信息利用数据库查询语句进行与后台数据库中的数据进行比较的一种方式,但是这种方式有很大的一个漏洞就是这样很容易被其他的黑客攻击,因为他们只需要将数据库语句写进我们的文本框就可以通过我们的检测,避免需要实现用户的验证,这样就会对我们的信息安全造成很大的影响。
解决方案:
通过Java工程开发大全的相关资料的介绍知道了这种方式一般是不被采用的,我们平时在登录界面经常做的是需要避免这种情况的发生,所以我们采用以下方式进行数据验证
PreparedStatementpstmt=conn.prepareStatement(sql)。
这样的话就可以避免这种恶意的情况发生。
解决结果:
这种情况就可以避免发生。
6.1.3图形界面、数据库语句的实现
平时因为对数据库接触比较少使得我们对数据库不是很了解,还有就是我对Java的图形界面技术也不是了解很透彻,所以再设计前端图形界面处理的时候我们都是束手无策。
解决方案:
通过参考网络上CSDN论坛上相关的专业人士共享的代码,知道我们所需要的东西应该怎样去补充,通过分析其他同学的代码使得我们可以更好的完善自己的技术。
解决结果:
这种情况就可以避免发生。
可以更加我们队图形编程和数据库编程的熟悉程度。
7总结
经过一个多月的设计和开发,学校图书管理系统基本开发完毕。
其功能基本符合用户需求。
对于数据的一致性的问题也通过程序进行了有效的解决。
但是该系统还有许多不尽如人意的地方,在今后有待进一步改善。
通过这次程序设计真切地体会到程序设计的目的并不止于自己单纯任务的完成,而在于学习新的知识并掌握具体的方法,如何具体使用和具体应用你所学所用的语言。
从而获得一种本领:
就是融会贯通各种语言。
回首整个开发设计过程,我学到了很多书本上学不到的东西。
比如以前开发软件的时候,一般做的就是编码工作,实现比较简单的功能。
但是这次程序设计,我要负责图书管理系统的整个开发过程,包括系统可行性分析、系统需求分析、系统概要设计、系统详细设计等方面的工作。
在每个设计阶段我都能学到一些新知识,对我的动手能力提高很大。
在整个程序设计过程中,我基本上完成了图书管理系统各个模块的功能,达到了程序设计的要求。
页面设计还有进一步改善的地方,我会在今后的学习工作中着重加强这方面的锻炼。
在以后的学习中,还会遇到很多类似的情况,此次程序设计为我以后的工作积累了很多宝贵的经验。
这几个月中,从接到设计课题到具体设计再到完成系统开发,是一个不断地遇到问题与解决问题的过程。
其中包括:
分析各种需求、完善各种功能、增加必要环节、对各部分及整体进行检测与维护。
当然仍存在许多问题不能解决地尽善尽美,还需不断地继续与探索。
在结束设计的同时也感到了劳动的艰辛与劳动成果的来之不易,明白了程序设计是给自己提供了一个锻炼、升华、提高、完善的机会。
参考文献
《Java编程实现大全》电子工业出版社
《深入浅出mysql》人民邮电出版社
《java核心技术》机械工业出版社
《jsp程序设计》人民邮电出版社
《struts权威指南》电子工业出版社
尹朝庆.《计算机系统结构教程.》北京:
清华大学出版社.2008.
张维明.《信息系统原理与工程》.电子工业出版社.2009
《JAVA核心技术卷I:
基础知识》机械工业出版社2006
《软件工程工程课程设计》郑诚著机械工业出版社2010
《Java2程序设计使用教程(第2版)》电子工业出版社2009
《JAVA编程思想》机械工业出版社2008
◆本课题的具体进度安排(包括序号、起迄日期、工作内容)
第1周—第3周:
查阅相关文献资料,明确研究内容,学习开发所需JSP,Oracle10g等相关技术,确定方案.完成开题报告.
第4周—第5周:
对开发系统进行需求分析等开发的前期工作.
第5周—第12周:
进行开发工具的选择与配置,准备开发环境,具体代码的编写。
第13周—第14周:
完成修改毕业论文.
第15周:
准备论文答辩.
8致谢
本系统是在汤蓉老师的悉心指导下顺利完成的,从系统的选题、方案的制定以及论文的撰写,每一步都倾注着我们整个团队的心血。
在此,衷心感谢大家对我们这个工程整个过程的积极筹划以及出谋划策,在面对困难的时候大家共通过不放弃,通过各种办法解决各种困难
在此同时感谢汤蓉和徐振明老师,缜密的逻辑,活跃的思维,敏锐的洞察力,严谨的治学态度以及民主的作风给我留下了深刻的印象,为我开阔了视野,丰富了学识,并将使我受益终身,我学习的楷模;汤蓉老师的工作态度和说教方式让我们感到很亲切与他相处的也很融洽。
感谢计算机科学与技术专业、计算机系的全体老师辛勤培养和教诲!
最后,作者向在学习和生活中给予过自己关心、支持与鼓励的所
有老师、同学、朋友们表示最诚挚的谢意!