本科毕业论文(设计)
题 目:基于jsp技术的图书馆管理系统设计与实现 院 系:计算机科学系 专 业:计算机科学与技术 姓 名:潘 凯 学 号:0811001057 指导教师:杜隆胤 教师职称:讲 师
填写日期: 2012年 5月 1 日
摘 要
随着科学技术的进步,计算机行业的迅速发展,大大提高人们的工作效率.计算机信息处理系统的引进已彻底改变了许多系统的经营管理 。
图书管理系统是学校管理机制中的重要组成部分,通过对图书管理系统的运行管理机制进行调查研究,开发了此图书系统。本系统中解决了学校图书管理事务中的常用基本问题以及相关统计工作。本系统中包含6个功能模块:系统管理,读者管理,图书管理,图书借还,系统查询和更改口令.
本系统使有jsp进行网页界面的设计,使用MVC设计模式。本系统中通过JDBC驱动和数据库进行无缝连接,后端的数据库是SQL Server2005,该数据库具有较高的完整性,一致性和安全性.
关键词:图书管理;信息管理;jsp
II
Abstract
With the progress of science and technology, the astonishing rapid development of the computer industry has been improving people’s working efficiency greatly.The introduction of computerized information system has sharply changed the management in many systems in many fields。
The management system of the library takes an important role in the administration of school organization. I desigen the system after the thorough investigations about the library management system’s mechanism。 This system contains with reader informantion management model, book information management model, books borrowing and returning including system information query and password setting.
The system is contrived with Java Server Pages,the software design mode of MVC, which makes this system have the advantages of efficiently designed with beauteous and friendly interface 。 This system use jdbc driver to connect the mysql database server,which is also an open source database system for its users。 The batabase was desigend with highly integrity, security, and consistency.
Keywords:book management, management of information ,jsp
II I
目录
摘 要 ...................................................................................................................................... II Abstract ................................................................................................................................ III 第一章 前言 ........................................................................................................................ 1
第一节 毕业设计主要任务 ........................................................................................... 1 第二节 课题意义 ........................................................................................................... 1 第三节 可行性分析 ....................................................................................................... 1
一、技术可行性 ..................................................................................................... 1 二、经济可行性 ..................................................................................................... 1 第四节 相关技术介绍 ................................................................................................... 2
一、J2EE平台 ........................................................................................................ 2 二、WEB服务器和数据库 ...................................................................................... 2 第五节 论文的工作和安排 ........................................................................................... 2 第二章 需求分析 ................................................................................................................ 3
第一节 系统需求概述 ................................................................................................... 3
一、系统目标 ......................................................................................................... 3 二、用户类和用户特性 ......................................................................................... 3 第二节 系统需求模型 ................................................................................................... 3
一、功能描述 ......................................................................................................... 3 二、图书管理员详细功能描述 ............................................................................. 4 三、主要用例的用例描述 ..................................................................................... 4
第三章 概要设计 ................................................................................................................ 8
第一节 系统总体结构设计 ........................................................................................... 8
一、图书管理系统功能结构图 ............................................................................. 8 第二节 数据库设计 ....................................................................................................... 8
一、数据库设计概述 ............................................................................................. 8 二、图书信息表结构设计 ................................................................................... 10 三、图书类型信息表结构设计 ........................................................................... 11 四、读者信息表结构设计 ................................................................................... 11 五、读者类型信息表结构设计 ........................................................................... 11 六、图书借阅信息表结构设计 ........................................................................... 12 七、图书归还信息表结构设计 ........................................................................... 12 八、图书馆信息表结构设计 ............................................................................... 13 九、用户信息表结构设计 ................................................................................... 13 十、参数信息表结构设计 ........................................................................... 13
第四章 详细设计 .............................................................................................................. 14
V I
第一节 功能模块描述 ................................................................................................. 14
一、 系统设置模块描述 ..................................................................................... 14 二、 读者管理模块描述 ..................................................................................... 14 三、 图书管理模块描述 ..................................................................................... 15 四、 图书借还模块描述 ..................................................................................... 16 五、 系统查询模块描述 ..................................................................................... 17
第五章 系统实现 .............................................................................................................. 18
第一节 程序设计 ......................................................................................................... 18
一、程序设计概述 ............................................................................................... 18 二、数据库与Web服务器的连接 ....................................................................... 18 三、登录模块模块的实现 ................................................................................... 19 四、系统管理员功能模块的实现 ....................................................................... 20 五、读者管理功能模块的实现 ........................................................................... 20 六、查询功能模块的实现 ................................................................................... 21 七、图书管理功能模块的实现 ........................................................................... 21 八、图书借还功能模块的实现 ........................................................................... 21
第六章 软件测试 ................................................................................................................. 23
第一节 软件测试的方法与步骤 ................................................................................. 23 第二节 测试用例设计与测试用例的运行过程及测试结果分析 ............................. 23
一、单元测试 ....................................................................................................... 23 二、集成测试 ....................................................................................................... 25 三、验收测试 ....................................................................................................... 25 第三节 评价 ................................................................................................................. 25 第七章 结束语 ..................................................................................................................... 26
第一节 工作成果 ......................................................................................................... 26 第二节 改进意见 ......................................................................................................... 26 第三节 收获体会 ......................................................................................................... 26 致谢 ....................................................................................................................................... 27 参考文献 ............................................................................................................................... 27
V
贵阳学院毕业设计(论文)
第一章 前言
第一节 毕业设计主要任务
1.实现图书馆对所藏图书的按类别、书名等多方面的查询,最大的方便图书馆工作人员对所需图书的查询;
2.建立图书馆外借读者数据库,方便工作人员对读者进行有效管理;
3。实现图书馆对新书入库,旧书注销的简单处理,并且建立书籍档案,方便进货; 4。实现图书馆;
第二节 课题意义
随着计算机的广泛应用,其逐步成为现代化的标志。图书馆或者一些企业内部,在正常运行过程中总是面对大量的读者信息,书籍信息以及两者相互作用产生的借书信息、还书信息.因此需要对读者资源、书籍资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,要对因此而产生的单据进行及时的处理,为了提高图书馆或者企业内部对图书存销的自动化的管理,能够更快速的满足读者的要求,提高各种工作的效率,现对其设计相应的系统,以达到上述的目的。
图书管理系统的主要功能是实现图书馆图书借阅和归还的管理的自动化。围绕这一主要功能,本系统涉及到以下核心功能:借阅管理,归还管理.除了这些核心功能外,还包括一些基本和辅助功能,它们是:用户管理、图书馆参数管理、图书管理、统计查询。
第三节 可行性分析
采用现代化统一的计算机信息网站系统,能够有效优化图书馆管理系统,使其高效的发挥最大作用。开发本系统的可行性研究如下:
一、技术可行性
技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软、硬件能否满足需要.本系统采用JSP开发出友好美观的人机界面,便于用户理解、操作。数据库管理系统采用SQL Server2005。硬件方面,在科技飞速发展的今天,硬件更新速度越来越快,容量越来越大,可靠性越来越高,价格越来越便宜,因此硬件平台也能够满足本系统所需。
二、经济可行性
鉴于计算机技术发展异常迅猛,在硬件软件配置以及开发技术均已可行的情况下开发这样一个管理系统成本不会很高,且可以大大提高图书馆的工作效率,也是图书馆管理发
1
贵阳学院毕业设计(论文)
展的必然趋势,其必将有比较宽阔的市场,因此该系统在经济可行性上时可行的.
第四节 相关技术介绍
一、J2EE平台
J2EE ,即是Java2平台企业版,在开发图书馆管理系统的过程中,应用Myeclipse8.5,它可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率.Myeclipse是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, CSS, Javascript, SQL。
二、WEB服务器和数据库
在系统的开发过程中使用的Web应用服务器是Tomcat,使用SQL Server2005作为数据库开发工具.SQL Server2005是一个中型关系型数据库管理系统,可以为该系统提供可靠的数据保障.
第五节 论文的工作和安排
本次设计的目标是,开发一个图书馆借阅管理系统。借助该系统,管理员通过快捷可靠的数据库管理,方便的管理图书馆的信息资料,规范化的管理读者用户。
论文设计和实现了图书借阅管理系统,管理员对图书馆的的各种信息进行添加、删除、修改或查询操作。论文分为五个部分:
第一章即本章前言,简述图书馆借阅管理系统这个课题的背景情况以及开发本系统的意义。
第二章为需求分析,本章中明确了系统需要实现的功能,分析了系统的用例,并介绍根据系统的需求选择的开发工具和技术的概况。
第三章是总体设计,详细描述了本系统中数据库的设计情况,并给出了系统总体界面的设计方案。
第四章为程序设计与编码各主要功能模块的实现方法和部分关键代码,同时提供了各主要界面运行的参考图片,以更直观了解系统的实现情况。
第五章是软件测试,测试系统功能实现并对测试结果进行记录分析。 第六章为结束语,为此次毕业设计做一个总结,总结所获得的经验和体会。
2
贵阳学院毕业设计(论文)
第二章 需求分析
第一节 系统需求概述
一、系统目标
该系统主要建立一个基于B/S模式的图书馆借阅管理系统,面对当前很多小型图书馆管理检索速度慢,效率低,借阅归还图书量大,图书统计工作量大,藏书不能完成及时更新的问题,该系统对于图书馆工作人员能够实现方便的对图书进行查询,读者借阅情况查询,借书还书处理等,便捷的对图书信息进行添加、修改、删除,分类管理等操作,对读者信息进行相关添加,修改,分类管理等操作。
二、用户类和用户特性
图书借阅管理系统是一个基于B/S模式的对图书馆进行高效率管理的应用系统,它的用户是图书管理员,图书管理员通过本系统实现对图书及读者的高效管理。
表2.1用户具体描述
用户类型 图书管理员 描述 图书管理员是该系统的使用者,图书管理员通过该系统进行图书的增加,修改,删除,分类管理等操作,实现对读者借阅归还续借图书的操作,实现对系统中图书,读者,读者借阅情况的查询,信息更改维护等操作。 第二节 系统需求模型
一、功能描述
图书借阅管理系统的主要任务是图书管理员高效的完成系统的各项基本操作,从图2.1可以看出图书借阅管理系统要完成以下功能:
1. 登录。
图书管理员进入该系统必须登录,身份验证正确了才可以进入该系统。 2. 系统设置功能:
图书管理员可以设置图书馆相关的参数信息。 3。 查询功能:
对图书馆的馆藏图书,借阅历史,读者信息进行查询。
3
贵阳学院毕业设计(论文)
4. 其他功能
图书管理员可以修改自己的密码。
下面的系统用例图描述了整个系统用户之间的动作联系。
图书馆管理系统登录读者管理系统管理图书管理员借还管理图书管理
图2。1 系统用例图
二、图书管理员详细功能描述
1. 读者管理功能:
对读者的类型和读者信息进行管理,包括添加,修改,删除读者类型和读者用户的相关信息,管理不同读者类型借阅图书的数量。 2. 图书管理功能:
包括对图书类型和具体图书信息的管理,可以增加,修改,删除图书,丰富具体图书的信息,对不同图书进行分类操作. 3. 图书借阅功能:
可以完成对读者借阅,续借和还书的操作。 4. 系统查询功能:
查询图书相关资料,借阅历史和借阅到期提醒。 5. 修改密码功能:
可以修改自己的登录密码。
三、主要用例的用例描述
图书借阅管理系统涉及到的用例包括:图书借阅,图书归还,图书查询,读者信息管理,图书信息管理,用户管理等。现就系统的主要用例图书借阅,图书归还,图书查询进
4
贵阳学院毕业设计(论文)
行详细分析。
1)用例“图书借阅” 用例名称 标识符 参与者 描述 图书借阅 UC-1 图书管理员 管理员可以通过查询等方式获得读者想借阅的图书的名称,编号,等其他可唯一识别的信息,读者向图书管理员提出借阅请求,管理员在系统中记录相应信息,将图书交给读者,借阅成功. 前置条件 后置条件 主干过程 1. 登录;2. 进入图书借阅的页面 更新图书借阅列表 1.读者请求借阅新的图书,并提供自己的编号 2。系统显示读者借阅情况的表单 3.读者提供想借阅的图书的标号 4。系统存储读者和借阅的图书,并将之存储到数据库中 5。系统更新借阅列表 分支过程 异常 1。选择重置2.管理员选择重置3。系统刷新该页面 读者借阅已满 1.读者借阅的数目已经到达自己借阅的上线 2. 系统将错误信息显示在借阅页面 3。 系统重新启动该用例 被包含用例 被扩展用例 优先级
2)用例“图书归还\" 用例名称 标识符 参与者
无 无 高 图书归还 UC—2 图书管理员 5
贵阳学院毕业设计(论文)
描述 前置条件 后置条件 主干过程 读者将自己借阅的图书归还图书馆。 1。 登录;2. 进入图书归还页面 1. 更新图书归还列表 1.0 图书归还 1. 读者提供自己的编号 2. 系统显示该读者的借阅信息表 3. 使用者将要归还的图书交给管理员 4. 管理员输入图书编号,系统存储归还信息,并将之存储到数据库中 5. 系统更图书归还列表 异常 读者借阅超时 1.该书超出了应该归还的时间范围 2. 系统将罚款信息显示在归还页面 3。 需要缴纳罚金 被包含用例 被扩展用例 优先级 无 无 高
3)用例“图书查询”
用例名称 标识符 参与者 描述 前置条件 后置条件 主干过程 图书查询 UC—3 图书管理员 图书管理员通过图书的标号,名称等信息对相应的图书进行查询。 1. 登录; 2。 转到图书查询页面 1。 查询页面显示相应的图书的信息 图书查询 1. 图书管理员输入想要查询的图书信息
6
贵阳学院毕业设计(论文)
2. 系统显示相应的图书信息 分支过程 输入信息时 1. 系统显示:请选择查询依据 2. 用户进行相应选择 重新查询 1. 系统已经显示了相应图书信息 2. 图书管理员想查询其他图书 异常 查询的图书不存在 1。 图书管理员输入的图书信息不能在数据库中查询到 2. 系统显示暂时无该图书信息 3。 重新启动该用例 被包含用例 被扩展用例 优先级
无 无 高
7
贵阳学院毕业设计(论文)
第三章 概要设计
第一节 系统总体结构设计
一、图书管理系统功能结构图
绘制系统结构图的过程,实际上就是对系统功能模块进行分解设计的过程,即合理地将数据流程图转变为所需要的系统结构图。
系统功能结构图将会使用户能直观的了解系统的结构模式,理解系统的各个功能的结构,能很好地方便用户使用和理解整个系统。
本系统的功能结构图如下:
图书管理系统系统设置读者管理图书管理图书借还系统查询图书馆信息管理员设置参数设置书架设置读者档案管理读者类型管理图书类型设置图书档案管理图书借阅图书续借图书归还图书档案查询图书借阅查询借阅到期提醒
图3.1 系统功能结构图
根据需求分析的结果,按照“低耦合、高内聚”的原则,本系统将划分为以下主要功能模块:系统设置功能模块,读者管理功能模块,图书管理功能模块,图书借还功能模块;系统查询功能模块。
第二节 数据库设计
一、数据库设计概述
数据库是整个系统的基石,数据库的设计优劣直接影响到整个系统的设计成败,本节对数据库的设计进行专门阐述。
数据库设计是把现实世界的实体模型与需求转换成数据库的模型的过程,它是建立数
8
贵阳学院毕业设计(论文)
据库应用系统的核心问题。数据库及其应用的性能都建立在良好的数据库设计的基础之上,数据库的数据是一切操作的基础,如果数据库设计不好,那么其它一切用于提高数据库性能的方法收效都是有限的。数据库设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。
设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是范式,范式是符合某一种级别的关系模式的集合。一般人们设计数据库遵循第三范式。即:数据库表中不包含已在其他表中包含的非主关键字信息。采用范式减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度。
整个系统所包括的信息有图书信息、读者信息、图书借阅信息、图书归还信息、系统用户信息。可将这些信息抽象为下列系统所需要的数据项和数据结构:
1)图书信息(编号,图书名称,图书类型,作者,译者,价格,所在书架,入库时间) 2)图书类型(编号,名称)
3)读者信息(编号,姓名,性别,出生年月,证件类型,证件号码,登记日期,电话,邮箱)
4)读者类型(名称,可借阅图书本数)
5)图书借阅信息(图书编号,读者ID,借出时间,应还时间,是否归还,操作员) 6)图书归还信息(图书编号,读者ID,归还时间,操作员) 7)用户(编号,用户名称,密码)
8)图书馆信息(名称,馆长,电话,地址,邮箱,创建日期,简介) 9)参数信息(编号,费用,有效期限) 注:带下划线表示主键
在这里使用E—R图描述了图书借阅管理系统的数据模型.图3。2图书借阅管理系统E-R图描述了该系统所涉及到的实体以及他们之间的关系。具体结构如下图所示:
9
贵阳学院毕业设计(论文)
编号证件类型出身年月证件号码登记日期电话借阅邮箱图书类型作者译者价格所在书架入库时间n图书m管理n图书管理员读者mm管理编号密码名称姓名姓名n编号书名
图3.2 系统E—R图
二、图书信息表结构设计
图书信息表主要用于存储图书馆中所藏图书的相关信息,其中的相关信息是在图书入库时由操作员进行添加完善,此表主要用于图书管理员对馆中图书的查询,系统用户根据图书的某个属性进行查询,便可得知图书的其他相关信息,其中图书所在书架属性是便于读者借阅时对图书的寻找,图书价格是在读者不慎将图书遗失时对遗失图书进行赔偿的依据。表的具体信息如下:
表3。1图书信息表tb_bookinfo
字段名称 Barcode Bookname Author Translator Isbn Price Bookcase Intime Oprerator Page
数据类型 Varchar Varchar Varchar Varchar Varchar Float Varchar Data Varchar Int 字段长度 30 70 30 30 20 10 30 10 10
是否为空 No No Yes Yes No No No No No Yes 说明 Key 书名 作者 译者 序列号 图书价格 图书所在书架 图书入库时间 操作员 图书页码 贵阳学院毕业设计(论文)
三、图书类型信息表结构设计
该表的设计主要是方便对图书的分类,对图书的查询,在实际应用中图书管理员就是根据图书类型的不同将之分列在不同的书架,以方便读者的借阅寻找,其中可借阅天数项设置了不同类型图书的借阅期限,可根据图书的具体情况进行不同的维护管理。表的具体信息如下:
表3.2 图书类型信息表 tb_booktype
字段名称 ID Bookname 数据类型 Int Varchar 字段长度 10 30 是否为空 No No 说明 Key 书名 四、读者信息表结构设计
读者信息表的设计是为了图书馆管理员对读者进行管理,其中读者ID,证件的号码都是唯一的,是读者在借阅图书时需要输入对读者身份进行识别的信息,读者邮件电话等信息是为了与读者进行联系,注册时间可用于查询计算读者身份有效的期限,操作员是为了便于对信息的操作的查询.表的具体信息如下:
表3.3 读者信息表tb_reader
字段名称 ID Name Sex Barcode Tel e-mail PaperType PaperNO. Intime Oprerator 数据类型 Int Varchar Varchar Varchar Varchar Varchar Varchar Varchar Date Varchar 字段长度 10 20 4 30 20 100 10 20 30 是否为空 No No No No Yes Yes No No No No 说明 Key 条形码 电话 证件类型 证件号码 登记时间 操作员 五、读者类型信息表结构设计
此表的设计是为了对不同身份的读者进行分类方便读者的管理,其中可借阅图书数量
11
贵阳学院毕业设计(论文)
的属性设定,是根据读者需求的不同对权限进行的设置,用于规定不同类型读者一次可借阅的图书数量.表的具体信息如下:
表3。4读者类型信息表tb_readertype 字段名称 数据类型 字段长度 是否为空 ID Name Number Int Varchar Int 10 50 4 No No No 说明 Key 可借阅书本数 六、图书借阅信息表结构设计
该表的设计是用于对读者借阅图书进行管理,表中图书ID属性是对借阅图书的唯一性识别标识,读者ID号记录借阅的相应读者,还有借出时间和相应的归还时间,操作员是对借阅进行操作的人员的记录方便日后的查询,是否归还标识可查询当起读书是否被归还。表的具体信息如下:
表3.5 图书借阅信息表tb_borrow
字段名称 ID readerID bookID borrowTime backTime Operator Ifback 数据类型 Int Varchar Int Data Data Varchar Tinyint 字段长度 10 10 10 30 1 是否为空 No No No No No No No 说明 Key 借出时间 应还时间 操作员 是否归还 七、图书归还信息表结构设计
与图书借阅信息表形成对照的是图书归还信息表,该表的设计除了像上表一样把借阅的图书与相应的借阅者进行对应的联系以外还记录了读者归还图书的时间,以此判断读者的借阅是否超时.表的具体信息如下:
表3。6 图书归还信息表tb_giveback
字段名称 ID readerID
数据类型 Int Varchar 字段长度 10 10 12
是否为空 No No 说明 Key 贵阳学院毕业设计(论文)
bookID backTime Operator Int Data Varchar 10 30 No No No 归还时间 操作员 八、图书馆信息表结构设计
该表包含了图书馆的名称,地址,联系方式,建馆时间,简介等信息,是对图书馆基本属性信息的描述。表的具体信息如下:
表3.7 图书馆信息表 tb_library 字段名称 ID Libraryname Curator Tel Address e—mail Createdate Introduce 数据类型 Int Varchar Varchar Varchar Varchar Varchar Varchar Text 字段长度 10 50 10 20 100 100 是否为空 No No No Yes No No No Yes 说明 Key 馆长 电话号码 创馆时间 简介 九、用户信息表结构设计
该表的设计用于记录图书管理员用户的信息,方便对用户的管理,表中包括用户ID和用户的登录密码。表的具体信息如下:
表3.8 管理员信息表tb_manager
字段名称 ID Name Password 数据类型 Int Varchar Varchar 字段长度 10 30 30 是否为空 No No No 说明 Key 十、参数信息表结构设计
该表是对与需要到图书馆进行借阅的读者可办理借阅证用于对图书的借阅凭证,表中包含了所需费用和证件有效期限。表的具体信息如下:
表3。9图书证参数信息表tb_parameter 字段名称 ID Cost Validity
数据类型 Int Int Int 字段长度 10 10 10 是否为空 No No No 说明 Key 费用 有效时间 13
贵阳学院毕业设计(论文)
第四章 详细设计
第一节 功能模块描述
一、 系统设置模块描述
该模块主要包括图书馆信息设置,管理员设置,参数设置,书架设置.
1。图书馆信息设置
该功能选项用于图书理员对图书馆名称,地址,联系方式,简介等信息的管理更新。该功能是对td_library表进行维护修改等操作,修改后的信息将被保存在该表中.
2.管理员设置
该功能模块主要是管理员对系统用户的管理,通过此模块的功能实现可以对用户进行添加、修改、删除、权限设置等操作。该操作是对tb_manager表进行操作,在对用户进行了相关的操作后把操作后的最新信息存放在该表中。
3。图书馆参数设置
通过该模块设置在图书馆办理图书证的费用及证件有效期限。该操作是对于tb_parameter表进行,并把操作后的最新数据存放在该表中。
下图是该模块的数据流程图:
开始系统设置选择设置内容假真图书馆信息设置管理员设置图书馆参数设置结束 图4.1系统设置模块流程图
二、 读者管理模块描述
该模块主要包含读者类型和读者信息管理模块。 1. 读者类型管理
该模块是对图书馆系统用户读者的类型进行维护,修改等操作,在此模块中主要设置
14
贵阳学院毕业设计(论文)
不同类型读者一次性可借阅的图书的数量,该操作是对tb_readerType表进行,并将操作结果保存在该表中。
2. 读者信息管理
该模块是对读者的基本信息进行管理,可以对读者的基本信息进行添加,修改,删除操作,这些操作均是对tb_reader表进行的,并将操作后的结果保存在该表中。
下图是该模块的数据流程图:
开始读者管理选择管理内容假真读者类型管理读者信息管理结束
图4。2读者管理模块流程图
三、 图书管理模块描述
图书管理功能模块可分为图书类型管理和图书信息管理两个模块。其各自的实现分别如下面表中所示:
表4。1图书类型管理描述
功能描述 访问的数据库表 进行的操作 产生的结果 图书类型管理 对图书进行类型分类,并对不同类型图书可被借阅的天数进行设置 图书类型表:tb_bookType 添加、修改、删除图书类型 对图书类型进行管理,对不同类型图书参数进行设置 询页面输出
表4.2图书信息管理描述
结果存储位置或输出 结果存储在图书类型表tb_bookType中,在图书类型查 功能描述
图书信息管理 对图书进行基本操作和信息管理 15
贵阳学院毕业设计(论文)
访问的数据库表 进行的操作 产生的结果 图书信息表:tb_bookinfo 添加、修改、删除图书 实现对图书基本操作和管理 询页面输出 结果存储位置或输出 结果存储在图书信息表tb_bookinfo中,在图书信息查四、 图书借还模块描述
该功能模块主要实现对读者借阅、续接、归还图书的操作。各自的描述如下各表所示:
表4。3图书借阅描述
功能描述 访问的数据库表 进行的操作 产生的结果 图书借阅管理 对读者借阅图书进行基本操作和信息管理 图书信息表: tb_bookinfo, 读者信息表:tb_reader 读者类型信息表:tb_readerType 对读者借阅图书进行管理 读者借阅成功,系统对借阅信息进行记录 查询页面输出 结果存储位置或输出 结果存储在图书借阅表tb_borrow中,结果在图书借阅 表4。4图书续借描述
功能描述 访问的数据库表 进行的操作 产生的结果 图书续借管理 对读者借阅图书进行基本操作和信息管理 图书借阅表: tb_borrow 对读者借阅图书进行续借 读者归还日期延后 查询页面输出 结果存储位置或输出 结果存储在图书借阅表tb_borrow中,结果在图书借阅 表4。5图书归还描述
功能描述 访问的数据库表 进行的操作 产生的结果 图书借阅管理 对读者归还图书进行基本操作和信息管理 图书借阅表: tb_borrow,读者类型信息表:tb_readerType 对读者归还图书进行管理 读者归还成功,系统对归还信息进行记录 结果存储位置或输出 结果存储在图书归还表tb_giveback中
16
贵阳学院毕业设计(论文)
五、 系统查询模块描述
该模块包括对图书馆藏书进行查询,对读者借阅情况进行查询,以及读者归还日期进行提醒的信息。其中各模块功能描述如下面各表所示:
表4。6图书查询描述 功能描述 访问的数据库表 进行的操作 产生的结果 图书查询 系统用户对馆藏图书信息进行查询操作 图书信息表:tb_bookinfo 用户通过图书的编号,作者,出版社等信息对图书进行相关查询 读者查询到相应的图书或系统提醒查询的图书不存在 结果存储位置或输出 结果在图书查询页面输出 表4。7图书借阅查询 功能描述 访问的数据库表 进行的操作 产生的结果 图书借阅查询 系统用户对读者借阅图书信息进行查询操作 图书借阅表: tb_borrow 用户通过图书的编号,读者编号等信息对某个读者或某本图书的借阅情况进行相关查询 查询到相应的读者或图书得借阅情况 结果存储位置或输出 结果在图书借阅查询页面输出 表4。8图书到期提醒描述 功能描述 访问的数据库表 图书借阅到期提醒管理 显示读者借阅图书应归还日期 图书借阅表: tb_borrow, 图书归还表:tb_giveback 读者信息表:tb_reader 读者类型信息表:tb_readerType 进行的操作 产生的结果
查询到相应的还书时间 结果存储位置或输出 17
贵阳学院毕业设计(论文)
第五章 系统实现
第一节 程序设计
一、程序设计概述
在设计的Web层应用了著名的MVC模式,V有JSP来实现,为了业务逻辑和表示的分离。它是基于Web应用系统,它的客户端使用Broswer,然后是Web层的应用,业务逻辑层,资源管理层。客户请求浏览页面,一般Web层的View有JSP组成,并且使用了大量Taglib。把每个请求映射到某个HTMLAction类来响应它。HTML Action类是一个标准的类,执行选择的HTML Action。使用MVC模式减少了代码的复制,即减少了代码的维护,由于模型返回的格式不带任何显示格式,因而模型可以直接应用于接口的使用,还因为MVC模型把不同的模型和不同的视图组合在一起完成不同的请求,因此,控制层可以说包含了用户请求权限的概念。
二、数据库与Web服务器的连接
数据库连接时采用连接池技术链接SQL Server2005,具体代码实现如下:
public class DBUtil {
static List //封装连接 private static Connection getConnection(){ Connection conn=null; try { Class。forName(\"com。microsoft.sqlserver。jdbc.SQLServerDriver\"); conn=DriverManager。 getConnection(”jdbc:sqlserver://localhost:1433;databaseName=kaizi\", \"sa”, \"pankai860101wsad”); } catch (SQLException e) { } e.printStackTrace(); } catch (ClassNotFoundException e) { e。printStackTrace(); } return conn; //连接 public static Connection getConn(){ Connection conn=null; if(list。size()〉0){ conn=list。get(0); list.remove(0); 18 贵阳学院毕业设计(论文) } } public static void getClose(Connection conn){ if(conn!=null){ if(list。size()〈25){ list。add(conn); }else{ try { conn。close(); } catch (SQLException e) { e。printStackTrace(); } }else{ conn=getConnection(); } return conn; //判断是否关闭连接 } } } //初始化连接 static{ } //往list中存放25个连接对象 for(int i=0;i〈=25;i++){ Connection conn=getConnection(); list。add(conn); System.out.println(\"已经建立连接池”); } 三、登录模块模块的实现 本模块主要是用户通过图书管理系统的登录页面登录进入该系统。用户输入正确的用户名和密码登录系统;如果登录信息有错误,则系统转到错误页面。图书借阅管理系统的登录页面如图4.1所示. 图5.1图书管理系统登录页面 用户在登录页面写好用户名和密码,选择登录,登录成功则跳转到系统的首页,否则转到错误页面。在服务器端进行用户身份验证的程序流程图如图4.2程序流程图所示: 19 贵阳学院毕业设计(论文) 开始输入用户名和密码用户名密码是否正确否是转到错误页面登录成功跳转到首页结束 图5.2用户登录流程图 四、系统管理员功能模块的实现 本模块中最主要的是管理系统用户,设置图书馆信息等操作,其中管理系统用户包括对他们进行添加,修改,删除及权限划分操作。 其中系统管理员对图书馆信息设置操作页面如下图所示: 图5。3图书馆信息设置界面 五、读者管理功能模块的实现 读者管理主要实现对读者的类型管理和信息管理两个功能模块,其中读者类型管理中需要设置不同类型读者一次性可借阅的图书数量,读者信息管理则主要管理维护读者的基本信息,其各自操作界面如下所示: 1)读者信息管理功能界面: 图5。4读者信息管理界面 2) 读者类型管理功能界面: 20 贵阳学院毕业设计(论文) 图5.5读者类型管理界面 该管理功能在设置读者信息时需要输入读者姓名,性别,条形码,选择读者类别,有效证件,证件号码,电话,e-mail等信息。其中的姓名,性别,条形码,证件号码是必填选项。 六、查询功能模块的实现 查询功能模块包括图书查询,读者借阅查询和借阅到期提醒三个功能模块。这里就其中借阅查询介绍下。 借阅查询模块是对图书当前状态和读者当前的借阅情况进行查询,用户登录并进入该操作界面后选中相应的查询条件,并输入相应的查询信息,系统即可在页面显示被查询的图书的状态,或相应读者的当前借阅情况,借阅查询页面如下图: 图5。6借阅查询界面 七、图书管理功能模块的实现 与读者管理模块类似,图书管理模块也分为图书类型管理和图书档案管理两个模块,其中图书类型管理功能处理将图书分类提高管理效率外还设置了不同类型图书可借阅的天数,对不同类型图书进行区别管理,图书档案管理是管理维护图书馆藏书的基本信息。这两个模块的操作界面为: 1) 图书类型管理界面 图5.7图书类型管理页面 2) 图书档案管理界面: 图5.8图书信息管理页面 图书档案中包含图书的条形码,图书名称,图书类型,作者,译者,价格,出版社,所在书架等图书基本信息,其中作者,译者,页码是备选信息,可以不填。 八、图书借还功能模块的实现 该功能模块可分为图书借阅,图书归还,图书续借三个模块。 1) 图书借阅。该模块实现系统的借阅功能,读者向图书管理员提供自己的编号会显示 出读者当前的借阅情况,再提供要借阅的图书标号,图书管理员将信息记录在系统中,借阅成功,其操作界面如下图: 图5.9图书借阅页面 如果在借阅时所要借阅的图书不存在或者读者借阅已达借阅图书的上线,则读者不能接续借阅图书,系统将给出相应提示. 21 贵阳学院毕业设计(论文) 2)图书归还。该模块实现系统的图书归还功能,读者向图书管理员提供自己的编号会显示出读者当起的借阅情况,再提供要归还的图书标号,图书管理员将信息记录在系统中,归还成功,其操作界面如下图: 图5.10图书归还页面 22 贵阳学院毕业设计(论文) 第六章 软件测试 第一节 软件测试的方法与步骤 该系统在本地服务器上进行运行和调试,鉴于对系统的内部结构和处理算法的完全了解以及对系统功能的全面掌握对系统进行白盒测试和黑盒测试。 在开发软件系统的过程中,需要面对错综复杂的问题,因此,在软件生存周期的每个阶段都不可避免地会产生错误。测试目的在于:发现错误而执行一个程序的过程,测试重要发现一个发现其中尚未发现的错误。 本系统的测试阶段信息流程下图所示。 软件配置错误测试测试结果评价错误率数据测试配置预期结果可靠性模型可靠性预测调试正确 图6。1测试阶段信息流程图 为了设计出有效的测试方案按照下面准则进行测试:所有测试都应追溯到用户需求,在完成了需求模型就要着手制定测试计划,在编码之前对所有测试工作进行计划和设计,从小规模开始逐步进行大规模测试,通常先重点测试单个程序模块再转向集成的模块簇;精心设计测试方案,尽可能充分覆盖程序逻辑使之达到要求的可靠性。 按照软件工程的观点,软件测试(主要是指多模块程序的测试)共包括4个层次。 1)单元测试。单元测试的用例从单元详细设计中导出。在单元测试中可以采用功能性测试和结构性测试两种. 2)集成测试和确认测试.这一阶段的任务,是通过了单元测试的模块逐步组装起来,通过测试与纠错,最终得到一个满足需求的目标软件. 3)验证测试.在这个测试步骤中所发现的往往是需求规格说明的错误。一般来说,系统测试是功能性测试,不是结构性测试。 在整个测试中,采用了白盒测试和黑盒测试相结合的方法。 第二节 测试用例设计与测试用例的运行过程及测试结果分析 一、单元测试 单元测试采用等价分类法进行测试: 23 贵阳学院毕业设计(论文) 1) 登录模块测试 划分等价类: 表6。1用户名和密码的等价分类 输入数据 有效等价类 无效等价类 输入用户名和密码 (1)用户:非空字符 (2)密码:非空字符 (3)用户:空字符 (4)密码:空字符 用户名和密码是否对应 (5)对应 (6)不对应 表6.2测试用例 测试数据 用户名:pankai 密 码:pk110 用户名:pankai 密 码: 用户名: 密 码:pk110 用户名: 密 码: 用户名:pankai 密 码:hadhda 期望结果 登录成功 测试范围 (1)(2)(5) 登录失败 (4) 登录失败 (3) 登录失败 (3)(4) 登录失败 (6) 当用户输入的用户名或密码错误时系统会跳转到出错页面并提示“您输入的用户名或密码错误”,用户点击返回,系统会重新返回登陆页面,其中错误信息提示页面如图5.2所示: 图6.2系统出错提示页面 2)更改密码模块测试 用户登录系统后可对自己的登录密码进行更改,更改过程要求用户提供原始密码,输 24 贵阳学院毕业设计(论文) 入新密码,重新输入新密码进行确认,如果用户输入的原始密码错误,或两次输入的新密码不一致将无法执行密码更新操作,系统会给出相应的提示,显示页面为: 图6.3两次密码不一致提示弹窗 二、集成测试 把经过单元测试的模块放在一起形成一个子系统并对它进行测试用于检验模块相互间的协调和通信。下图是读者信息管理成功运行界面: 图6.4读者管理测试截图 把经过测试的子系统装配成一个完整的系统进行测试,经过黑盒测试与白盒测试相结合的方式,对整个系统的各个功能模块进行了测试,并调试改正其中的设计和编码错误,经过这个环节的操作整个系统的功能基本实现成功运行。 三、验收测试 在进行了以上的测试工作后,将整个软件系统作为单一的实体进行测试,测试内容与系统测试基本类似,但它是在用户积极参与下进行的,此测试过程主要使用实际数据,进行测试,验证测试的目的是验证系统确实能够满足用户的需求,经过这个环节的实际数据测试,系统的各个功能实现都达到了系统需求设计的要求。 第三节 评价 测试过程严格按照测试的流程,经过单元测试、子系统测试和系统测试。通过单元测试,查找出了系统各模块内部的错误;通过子系统测试,发现了模块间相互协调和通信上的错误;通过系统的集成测试,发现了软件设计过程中存在的错误。通过改正错误的设计和实现部分,保证了图书借阅管理系统可以完成需求分析中制定的需求。 从上面的测试中可以看出,此系统可以完成用户登录、系统设置、图书管理、读者管理管理、借阅管理和系统查询等功能.图书馆工作人员能够实现方便的对图书进行查询,方便的进行读者借阅情况查询,方便的进行借书还书处理等,便捷的对图书信息进行添加、修改、删除,分类管理等操作,对读者信息进行相关添加,修改,分类管理等操作。测试阶段的工作一方面发现了系统的各种错误,另外一方面也验证了修改后的系统能够实现提高图书馆工作效率的预期目的。 25 贵阳学院毕业设计(论文) 第七章 结束语 第一节 工作成果 在MyEclipse开发环境下,以J2EE为平台,运用JSP网络编程语言和SQL Server2005数据库完成了B/S模式的图书馆借阅管理系统.系统基本上实现了预期的各项功能,达到了任务书中的主要设计内容的各项任务,整个系统也在经过测试和不断地改正之后能够顺利运行。基本上实现了开题报告中的需求设计,该系统能够实现: 图书馆工作人员能够实现方便的对图书进行查询,方便的进行读者借阅情况查询,方便的进行借书还书处理等,便捷的对图书信息进行添加、修改、删除,分类管理等操作,对读者信息进行相关添加,修改,分类管理等操作. 第二节 改进意见 该系统只实现了管理员的登录管理,没有实现读者的在线功能。对于一个优秀的图书管理系统,读者的在线使用功能是必不可少的。还有就是系统在一些信息设置的细节上还存在不足,可以对系统的相关字段进行格式设置和异常处理,使数据更加规范化。 第三节 收获体会 经过几个月的不断学习和设计开发加上老师同学的帮助,终于完成了我的毕业设计题目“基于jsp技术的图书馆管理系统设计与实现”的开发,在整个系统的需求分析过程中对开发前期工作的流程步骤有了深入的掌握;在开发过程我进一步学习了Java的基础语法,和一些网页设计美工方面的知识,以便使系统有更好的美观性,在编写过程中也规范了许多编码习惯.在配置开发工具过程中对Tomcat和MyEclipse的连接部署有了清晰地认识,对开发Web程序的步骤有了总体性认识。 在整个系统开发的过程中,我学到了很多新的知识,以前学过的许多知识点在运用过程中也有了更为深入的理解,这是我大学期间做过的规模最大的项目,在这个过程中也体会到了如何将书本知识转化到实际的应用中. 26 贵阳学院毕业设计(论文) 致谢 参考文献 [1] 史济民,顾春华,郑红. 软件工程——原理方法与应用(第三版)。 北京:高等教育出版社. 2009。 [2] 徐林林。 java web编程从入门到实践。 北京:清华大学出版社. 2010. [3] 王珊,萨师煊. 数据库系统概论(第四版). 北京:高等教育出版社. 2006. [4] 范立峰,乔世权,程文彬。 jsp程序设计。 北京:人民邮电出版社. 2009。 [5] 卢翰。 jsp项目开发案例全程实录(第二版)。 北京:清华大学出版社。 2011。 [6] 张海藩。 软件工程导论(第四版). 北京:清华大学出版社. 2003. [7] 张秋余,杨玥。 基于用例的需求建模方法[J]. 计算机工程与设计。 2006 [8] 孙卫琴,李洪称。 Tomcat与Java Web开发技术详解. 北京:电子工业出版社. 2003 27 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- xiaozhentang.com 版权所有 湘ICP备2023022495号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务