简单图书管理系统毕业设计论文.docx
《简单图书管理系统毕业设计论文.docx》由会员分享,可在线阅读,更多相关《简单图书管理系统毕业设计论文.docx(28页珍藏版)》请在冰豆网上搜索。
简单图书管理系统毕业设计论文
基于JSP的高校图书管理系统的开发与设计
摘要
图书管理系统是基于JSP的Web应用程序,并以互联网为传播媒介来实现图书管理的一个管理平台。
系统采用管理员制管理,同时普通用户只能进行部分的查询功能。
系统功能模块主要有:
图书管理、用户管理、借阅管理和个人管理。
本文主要论述了其开发与设计的基本过程,在开发设计过程中主要运用了JSP、Javascript、MicrosoftSQLServer2005数据库等相关技术,根据面向对象开发原理,采用基于B/S的体系结构来开发系统。
图书管理系统使学校的图书管理变的更加方便,同时使管理人员从繁重的业务核算工作中解脱了出来,大大减轻了管理人员的工作负担,同时系统快捷的信息存储与查询功能很大地提高了管理人员的工作效率,节约了宝贵的时间。
关键词:
图书管理,MicrosoftSQLServer2005数据库,JSP,B/S
BASEDONJSPOFCOLLEGELIBRARYMANAGEMENTSYSTEMDEVELOPMENTANDDESIGN
ABSTRACT
BooksmanagementsystemisbasedonJSPWebapplications,andwiththeInternetasamediumtorealizeamanagementplatformbooksmanagement.Systemadoptstheadministratorsystemmanagement,andordinaryuserscanonlycarryonthepartofthesearchfunction,systemfunctionmainlyhasfourmodules:
librarymanagement,usermanagement,lendingmanagementandpersonalmanagement.Thispapermainlydiscussesthedevelopmentanddesignbasicprocess,inthedevelopmentofdesignprocessmainlyutilizedJSP,Javascript,MicrosoftSQLServer2005databaserelatedtechnology,basedonobject-orienteddevelopmentprinciple,basedonB/Sarchitecturetodevelopsystems.Booksmanagementsystemmanagementsystemmakeschoolbooksmanagementbecomemoreconvenient,alsomakethemanagerfromheavybusinessaccountingworkfreedoutandgreatlyreducedtheburdenofmanagementpersonnel,andthesystemup-to-the-minuteinformationstorageandinquiresthefunctiongreatlyimprovetheefficiencyofmanagementpersonnel,savingprecioustime.
KEYWORDS:
Booksmanagement,MicrosoftSQLServerdatabase,JSP,B/S
目 录
前 言
在信息化时代的今天,大量的信息伴随着每天的生活,这就需要我们很好的去管理这些信息,使这些信息规范化,有条理。
在图书馆管理方面每天就有大量的信息要处理,在人数不多的情况下要处理好这些信息,一套好的管理软件是必要的。
在现实中很多地方的图书馆积累了数万册图书,但由于还没有形成可综合利用的数据库,也没有一套计算机管理系统,致使图书的检索、查阅都很不方便,而图书管理系统则解决了这些问题,它帮助工作人员对图书进行规范化管理,解决了繁琐信息的管理难问题。
开发系统的目的是针对目前普遍的图书管理系统存在的功能不全,操作复杂等一系列问题,而开发一个具有个性化的图书管理系统,在图书馆内部建成可靠、方便,并且功能齐全的系统,从而在图书馆对新旧书的反应、对书籍借阅的管理能力、对读者和图书馆工作人员的管理能力、对图书馆管理人员软件操作的适应时间和操作感觉这些方面都将大大提高。
图书管理系统主要有四大模块的管理工作,分别是图书管理、用户管理、借阅管理和个人管理,所以图书管理系统的以四大模块为核心,各个模块逐步完善的方式进行开发。
借书与还书是图书管理系统最基础的功能,图书管理系统在完成这些功能时避免了可能出现的错误漏洞,这是其一大优点。
第1章系统概论
1.1开发背景及意义
图书馆的职能就是收藏并且传播先进文化。
即通过各类文献、资料、图书的收藏和知识、信息的传播,在素质教育和教育现代化、信息化中发挥着重要作用。
“书籍是人类进步的阶梯”。
图书馆是一个很重要的、层次很高的服务机构。
图书馆的好坏优劣,是一个校园文化进步与否的缩影。
由于人们求学、求知的渴望越来越强烈,因此图书馆在现实学习生活中发挥的作用就越来越大了。
在这个信息爆炸的时代,课堂书本上的知识远远不能够满足现代学生的求知需求,素质教育讲究的是因材施教,在传统教育的基础上,学校应该创造一个良好的自学平台,让学生根据自己的爱好,可以随时获取自己所需要的知识,作为教育一线的学校,应该首当其冲提供这个平台,而图书馆是这个平台中至关重要的基础设施。
图书馆在正常运行过程中总是面对大量的读者信息,书籍信息以及两者相互作用产生的借书信息、还书信息。
因此需要对读者资源、书籍资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,要对因此而产生的单据进行及时的处理,为了提高图书馆对图书存销的自动化的管理,能够更快速的满足读者的要求,提高各种工作的效率,一个好的图书管理系统是必须的。
1.2课题任务要求
本课题的主要任务是设计与开发一个基于JSP的高校图书管理系统,使之能够为图书馆的管理工作带来方便。
相关要求如下:
1.符合图书管理规定,满足图书管理系统需要,界面美观,操作方便。
2.相关数据库(表结构)的设计,满足3NF,具有数据库维护功能。
3.系统应具备一定的安全性。
4.采用模块化程序设计方案,完成系统的总体规划、分析、设计、实施、运行与维护,并进行系统的开发总结。
5.完成系统的集成测试和调试,运行正常,能在指定的服务器上演示,提交原程序,并按要求完成毕业设计说明书的撰写。
第2章系统需求分析
2.1可行性分析
可行性分析也称可行性研究,是决策部门在采取一项重大改革或行动之前,对该项目的必要性和可能性进行分析与论证的活动。
1.技术可行性
图书管理系统是采用B/S(浏览求/服务器)的体系结构。
即通过www浏览器向数据库服务器发布标准SQL命令和接收数据库服务器的运算结果,数据库服务器则负责数据查询、更改、统计等运算,并将运算结果返回浏览器。
这一运算模式的好处是数据运算集中在服务器端进行,在网络上传输的只是检索式与运算结果。
安全性。
采用进入功能的口令权限检查,对应不同的用户拥有不同的操作权限,这些口令有可以方便地进行修改。
易用性。
通过专门的查询设计,可进行高效率的检索查询。
系统不仅可以对单条记录进行查询,还可查询符合相关条件的多条记录。
2.经济可行性
新系统利用现有的校园网资源,节省了购买设备的费用;新系统自行设计自行开发,具有很高的性价比;新系统投入使用后,可节省人力,减轻劳动强度,从而降低了成本,节省开支。
2.2功能需求
在该系统中,主要涉及到两种用户登录该系统,普通用户和管理员。
对于这两种用户来说,功能上的需求如下:
普通用户通过身份验证后进入到系统主界面,进入主界面后,普通用户只能进行个人管理模块的操作,无法使用其他模块的功能。
个人管理模块要有查看个人借阅信息、搜索书籍、修改密码、注销的功能。
管理员通过身份验证后进入到系统主界面,管理员具有系统全部功能权限,首先能够进行个人管理模块的操作,其次还能够对图书管理模块、用户管理模块和借阅管理模块进行操作。
各模块应具有如下功能
1.图书管理模块
图书管理模块应具有注册图书信息、修改图书信息、删除图书信息、搜索图书信息的功能。
2.用户管理模块
用户管理模块应具有注册用户信息、修改用户信息、缴纳罚金、删除用户信息、搜索用户信息的功能。
3.借阅管理模块
借阅管理模块应具有借书、还书、搜索借书情况的功能。
2.3系统UML建模分析
2.3.1系统用例建模
通过对图书管理系统的分析,确定系统有两个参与者,分别为图书管理员和借阅者。
图书管理员有图书管理、用户管理、借阅管理、个人管理的功能,其各功能模块包含的具体功能如图2-1所示。
图2-1图书管理系统的用例图
图书管理功能用来完成对图书的管理工作。
图书管理包括注册图书、删除图书、修改图书信息、搜书四个功能。
注册图书功能用来完成对新书的入库工作;删除图书功能用来完成对于一些旧书、丢失书籍的出库工作;修改图书信息功能用来更改图书信息;搜书功能用来对图书进行搜索操作。
用户管理功能用来完成对用户的管理工作。
用户管理包括注册用户、删除用户修改用户信息、缴纳罚金、搜索用户五个功能。
注册用户功能用来添加新的借阅者;删除用户用来把删除已有的借阅者;修改用户信息功能用来更改已有用户信息;缴纳罚金功能对于上次图书超期的用户,只有缴纳罚金后才可继续借书,否则无法再借;搜索用户功能用来搜索用户的个人资料。
借阅管理功能用来完成基本的借书还书工作。
借阅管理包括借书、还书、搜索借阅者信息三个功能。
借书功能用来完成借阅者的借书工作;还书功能用来完成借阅者的还书工作;搜索借阅者信息功能用来对借阅者的借书情况尽心搜索。
个人管理功能是借阅者唯一可以使用的一个功能模块,主要供图书管理员或者是借阅者完成一些个人管理操作。
个人管理包括查看我的借阅情况、搜书、修改密码、注销四个功能。
查看我的借阅情况主要是供借阅者浏览一下自己借阅的书籍的信息;搜书与图书管理中的搜书功能相同;修改密码功能用来完成用户登录系统后对自己密码的修改工作;注销功能则是用户退出系统。
2.3.2系统对象类建模
类与对象建模用于描述一个系统的静态结构。
本系统类有两种类型:
一种是实体类,一种是操作类。
1.操作类关系图,如图2-2所示。
图2-2操作类关系图
系统有四个操作类,分别是基础操作类(BaseDao)、图书操作类(BaseDao)、用户操作类(UserDao)、借阅操作类(UserBookDao),最后三个类均继承于基础操作类。
BaseDao有三个功能函数,功能分别是与数据库建立连接、关闭与数据库的连接、执行SQL语句,而图书操作、用户操作、借阅操作都用到了这些功能,使用继承为程序减少了大量重复代码。
2.图书借还管理类,如图2-3所示。
图2-3图书借还管理类图
借还书时由借阅管理器完成,借阅管理器提取借阅者和书的某些属性构造一组对象并通过自身方法对其进行存储和管理,从而达到图书借阅与归还的目的。
2.3.3部分用例活动图描述
1.借书功能活动图,如图2-4所示。
图2-4借书功能活动图
借书时要输入借书证号和图书编号,然后进行信息完整性验证,通过验证之后,查询数据库判断是否有此用户以及有没有罚金,如果没有此用户则显示没有此用户信息,如果有此用户但是有罚金则显示您有罚金没交的信息,在通过了这两项检查之后,再查询数据库中图书,判断是否有此本书,如果没有这本书,则显示没有此本书的信息,在有这本书的情况下再查询数据库中借阅信息,检查此人是否达到最大借阅数量,如果此人达到了最大借阅数量,则显示您以达到最大借阅量的信息,如果没有达到,则增加数据库中借阅信息,然后检查数据库修改是否成功,如果成功,则显示借阅成功的信息,如果失败,则显示借阅失败的信息。
2.还书功能活动图,如图2-5所示。
图2-5还书功能活动图
还书时要输入图书编号,下步进行信息完整性验证,通过之后查询数据库中借阅信息,如果没有查到与此图书编号有关信息,则显示没有此条信息,否则进入还书界面,点击还书按钮后数据库图与此图书编号有关信息,如果删除成功则显示还书成功信息,否则显示还书失败的信息。
2.4系统开发环境及工具
2.4.1开发/运行环境
硬件平台
硬盘:
5G以上;
内存:
256M以上;
CPU:
PIII500以上;
操作系统:
WindowsXP;
数据库:
MicrosoftSQLServer2005;
开发工具:
MyEclipse6.5;
2.4.2开发工具的选取
1.JSP技术
JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
用JSP开发的Web应用是跨平台的,能在多钟操作系统上运行。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务器端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,是基于Web的应用程序的开发变得迅速和容易。
2.系统数据库的选择
SQLServer是Microsoft公司开发的一个典型的关系型数据库管理系统。
它功能强大、操作简便、安全可靠,因而得到广泛应用。
SQLServer2005基于SQLServer2000的强大功能,是继SQLServer2000之后推出的最新
版本。
第3章系统的设计
3.1系统数据流程描述
1.顶层数据流图,如图3-1所示。
图3-1图书管理系统顶层数据流图
系统中用户有两种,分别是图书管理员和普通用户(借阅者),不同用户登录系统后有不同的权限。
图书管理员有图书管理、用户管理、借阅管理、个人管理的功能,这也就是系统管理的全部功能,图书管理员登录系统后会进入系统管理模块,通过系统管理模块里的功能完成借阅管理工作;普通用户只有个人管理功能,普通用户登录系统后进入个人管理模块,来实现个人的管理操作。
2.系统管理模块数据流图,如图3-2所示。
图3-2图书管理员模块数据流图
由图3-2看到,图书管理员模块有四大功能。
P1.1图书管理功能,通过此功能,图书管理员完成了对图书的添加、修改、删除、搜索工作;P1.2用户管理功能,通过此功能,图书管理员完成了对用户的添加、修改、删除、搜索以及缴纳罚金工作;P1.3借阅管理功能,通过此功能,图书管理员完成了借阅者的借书、还书以及借阅者借书信息搜索的工作;P1.4个人管理功能,通过此功能,图书管理员可以查看自己的借书信息以及进行密码修改的工作。
3.个人管理模块数据流图,如图3-3所示。
图3-3个人管理模块数据流图
个人管理模块只有个人管理功能。
普通用户登录系统后,通过P2.1个人管理功能普通用户可以查看自己的借书情况,修改密码、搜书的工作。
3.2系统总体结构设计
该系统在总体结构上是趋于B/S结构,各类资源在服务器一端,采取中心数据库MicrosoftSQLServer2005统一存放和组织,用户在客户机一端,无须任何配置工作,只须使用浏览器向Web服务器代理提出请求,服务代理通过中间组件与数据库链接,把请求服务的内容以Web页面形式通过浏览器反馈给用户。
该系统分为图书管理员的系统管理模式与普通用户的个人管理模式,该系统的功能有四大块:
图书管理、用户管理、节约管理、个人管理。
系统管理模式有全部功能的使用权限,个人管理模式只有使用个人管理功能的权限。
其系统结构如图3-4所示。
图3-4图书管理系统结构图
3.3功能模块设计
3.3.1图书管理功能设计
该项功能具体有添加图书、修改图书、删除图书、搜索图书的功能。
1.添加图书:
输入图书的完整信息,不能有空项,点击添加通过完整性验证后,修改数据库信息,完成添加。
2.修改图书:
修改图书是依据已经存在图书的图书编号对数据库进行修改的,所以修改时不能对图书编号进行修改,其他信息均可修改,点击修改,通过完整性验证后,修改数据库信息,完整修改。
3.删除图书:
删除图书前,先对要删除的图书进行搜索,如果没有搜索到信息,则显示没有此信息,如果搜索到信息,则显示出来,图书管理员查看图书信息无误后,点击删除按钮,完成删除。
4.搜索图书:
搜索图书有三种搜索方式,分别是按图书编号搜索,按书名搜索,全部显示三种方式,输入与搜索类别相应的搜索信息,然后点击搜索按钮搜索出所需信息并在屏幕上显示。
当搜索方式为全部显示时,不需输入信息,直接点击搜索按钮,就可搜索出全部信息。
3.3.2用户管理功能设计
该项功能具体有添加用户、修改用户、删除用户、搜索用户、缴纳罚金的功能。
1.添加用户:
输入用户的完整信息,不能有空项,点击添加通过完整性验证后,修改数据库信息,完成添加。
2.修改用户:
修改用户也是依据已经存在的用户的id号对数据库进行修改的,所以修改时不能对id号进行修改,其他信息均可修改,点击修改,通过完整性验证后,修改数据库信息,完整修改。
3.删除用户:
删除用户前,先对要删除的用户进行搜索,如果没有搜索到信息,则显示没有此信息,如果搜索到信息,则显示出来,图书管理员确认用户信息无误后,点击删除按钮,完成删除。
4.搜索用户:
搜索用户有三种搜索方式,分别是按帐号搜索,按姓名搜索,全部显示三种方式,输入与搜索类别相应的搜索信息,然后点击搜索按钮搜索出所需信息并在屏幕上显示。
当搜索方式为全部显示时,不需输入信息,直接点击搜索按钮,就可搜索出全部信息。
3.3.3借阅管理功能设计
该项功能具体有添加借阅(借书)、删除借阅(还书)、搜索借阅信息的功能。
1.添加借阅:
这是一个借书功能。
借书时输入借书者的借书证号(id号)和要借图书的图书编号,点击添加按钮后系统连接数据库检查借书证号和图书编号的准确性,通过验证后在检查此人是否有罚金以及是否达到最大借阅量5本,如果在某项检查中没有通过信息验证,则显示出相应的信息给用户,如果通过了所有的验证,则修改数据库中借阅信息,完成添加借阅。
2.删除借阅:
还书时只需输入要换图书的图书编号,然后在借阅信息中搜索与此图书编号有关信息,并显示出来,确认无误后,点击删除,完成还书。
3.搜索借阅信息:
搜索借阅信息有三种搜索方式,分别是按图书编号搜索,按用户帐号(id号)搜索,全部显示三种方式,输入与搜索类别相应的搜索信息,然后点击搜索按钮搜索出所需信息并在屏幕上显示。
当搜索方式为全部显示时,不需输入信息,直接点击搜索按钮,就可搜索出全部信息。
3.3.4个人管理功能设计
该项功能具体有我的借阅信息、搜索图书、修改密码、注销的功能。
1.我的借阅信息:
主要是查看一下自己所借的书籍信息。
2.搜索图书功能上面已经描述过,这里不再描述。
3.修改密码:
登录系统后,直接输入新密码两次,通过完整性验证后,完成修改。
4.注销:
用户退出系统。
3.4系统数据库设计
3.4.1数据库设计概述
数据库设计是把现实世界的实体模型转换成数据库模型的过程,它是建立数据库应用系统的核心问题。
数据库及其应用的性能都建立在良好的数据库设计的基础之上,数据库的数据是一切操作的基础,如果数据库设计不好,那么其它一切用于提高数据库性能的方法都是无效的。
数据库设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。
3.4.2概念结构设计
概念结构设计是数据库设计的核心。
概念模型(E-R模型)的组成元素有:
实体、属性、联系,E-R模型用E-R图表示。
实体是用户工作环境中所涉及的事务,属性是对实体特征的描述。
设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是范式,范式是符合某一种级别的关系模式的集合。
一般我们设计数据库遵循第三范式。
即数据库表中不包含已在其他表中包含的非主关键字信息。
采用范式减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度。
该系统的E-R图3-5所示。
图3-5图书管理系统E-R图
3.4.3设计数据完整性
1.实体完整性设计
为保证实体完整性,为每个关系指定主键。
图书(图书编号,书名,作者,出版社)的主键为“图书编号”。
用户(帐号,密码,账户类型,姓名,性别,罚金)的主键为“帐号”。
借阅(图书编号,用户帐号,借书日期,还书日期)的主键为“图书编号”。
主键值不能为空,这就保证了关系中每一个元组都是可识别的。
一个元组对应一个实体,因此保证了每个实体都区别于其他实体,是可识别、可区分的。
2.域完整性设计
根据图书管理实际应用,为每个关系的每个属性设计数据类型、格式和有效的数据范围,具体设计在表3-6至表3-8中列出。
域完整性保证了每个属性具有正确的数据类型、格式和有效的数据范围
3.参照完整性设计
为保证数据的一致性,做如下设计:
“借阅”关系中的属性“图书编号”的值参照“图书”关系中的主键“图书编号”的值;
“借阅”关系中的属性“用户帐号”的值参照“用户”关系中的主键“帐号”的值;
3.4.4逻辑结构设计
通过以上设计得到一组关系模式:
图书(图书编号,书名,作者,出版社)
用户(帐号,密码,账户类型,姓名,性别,罚金)
借阅(图书编号,用户帐号,借书日期,还书日期)
这组关系模式的集合即为图书管理数据库模式。
每个关系模式就是图书管理数据库中的一个表,每个属性就是表中的一个字段。
图书管理数据库的逻辑结构如表3-1至表3-3所示。
1.图书信息表(T_book)
表3-1T_book表
字段名
数据类型
约束
book_id
nchar(20)
主键
book_name
nchar(50)
非空
auther
nchar(20)
非空
address
nchar(50)
非空
2.用户信息表(T_user)
表3-2T_user表
字段名
数据类型
约束
id
nchar(20)
主键
mima
nchar(20)
非空
type
nchar(20)
非空,值为‘0’,‘1’
name
nchar(20)
非空
sex
nchar(20)
值为‘男’,‘女’
money
nchar(20)
非空
3.借阅信息表(user_book)
表3-3user_book表
字段名
数据类型
约束
book_id
nchar(20)
主键,外键(参照T_book表的book_id)
id
nchar(20)
外键(参照T_user表的id)
begtime
Datetime
非空
fintime
Datetime
非空
3.4.5触发器设计
在还书时,对超期的用户要计算罚金,并将罚金的数额写入T_user表相应的money列进行存储,如果要通过数据库实现这个功能,就要用到数据库中的触发器。
建立触发器“还书”:
createtrigger还书
onuser_book
afterdelete
as
begin
setnoc