图书管理信息系统毕业设计_第1页
图书管理信息系统毕业设计_第2页
图书管理信息系统毕业设计_第3页
图书管理信息系统毕业设计_第4页
图书管理信息系统毕业设计_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

1、图书管理信息系统毕业设计目 录第一章.绪 论 11.1 研究背景 11.2 研究意义 11.3 研究容 21.4 论文组织 2第二章.系统可行性分析与需求 32.1 可行性分析 32.1.1 技术可行性 32.1.2 .经济可行性 32.2 系统需求概述 32.2.1 系统目标 32.2.2 用户类和用户特性 42.3 系统功能设计 42.3.1 总体功能描述 42.3.2 详细功能描述 5第三章.系统数据库设计 73.1 数据库设计 73.1.1 数据库概述 73.2 系统数据设计 73.3 数据表设计 83.3.1 图书信息表结构设计 83.3.2 图书类型信息表结构设计 93.3.3 读

2、者信息表结构设计 93.3.4 读者类型信息表结构设计 103.3.5 图书借阅信息表结构设计 113.3.6 图书归还信息表结构设计 113.3.7 用户信息表结构设计 123.3.8 图书馆信息表结构设计 123.3.9 办证参数信息表结构设计 123.3.10 书架信息表结构设计 133.3.11 权限信息表结构设计 133.3.12 信息表结构设计 13第四章.系统总体设计与实现 154.1 开发平台与工具 154.1.1 Eclipse 平台 154.1.2 WEB服务器和数据库 154.2 程序设计 164.2.1 程序设计概述 164.2.2 数据库与 WebK务器白连接 174

3、.2.3 登录模块设计 194.2.4 系统主界面设计 204.2.5 系统管理模块设计 214.2.6 读者管理模块设计 224.2.7 系统查询模块设计 234.2.8 图书管理功能模块的实现 264.2.9 图书借还功能模块的实现 27第五章.软件测试 305.1 软件测试的方法与步骤 305.2 测试用例设计与测试用例的运行过程及测试结果分析 315.2.1 模块测试 315.2.2 集成测试 325.2.3 验收测试 335.3 评价 33结论 34参考文献 35谢辞 36参考资料.第一章.绪 论1.1 研究背景在当今科技技术迅速发展的时代下,信息的流通和交换特别重要,人们也通过各种

4、 电子设备进行信息交流,图书馆是我们获得信息和学习的关键地方。但是目前单纯地依靠 手工在图书管理信息遇到以下问题:1借书、还书工作量大随着借阅图书的人员增多,图书管理的难度也大大加强,大量的借书和还书登记、 是否能及时对现有的图书进行更新和借出图书超期、遗失等的处理,这些用单纯地人工操 作是很难办到的。导致手续繁琐、工作量大、效率低下、出错率高等等问题出现。2图书统计工作难、藏书更新不能及时完成。图书馆的藏书应根据学生的需求和教学工作的需要及时添加和更新,但是随着藏书 数量和图书种类越来越多,加上人为的破坏等原因,导致图书的统计工作不能及时完成, 对藏书的更新也不能及时进行,藏书的总体结构得不

5、到良好地控制。1.2 研究意义随着计算机的发展和广泛应用,越来越多的人们喜欢用计算机进行信息处理。在图书 管理信息上,图书馆就是一个很鲜明的例子,图书馆在正常运行过程中总是要处理大量的 读者借书和还书信息以及各种图书的信息。因此需要对读者和图书的相关信息进行管理, 要是单纯地靠手工操作的话,将给管理员带来巨大的工作量,管理效率必然低下。为了提 高图书馆或者企业部对图书存销的自动化的管理,能够更快速的满足读者的要求,提高各 种工作的效率,现对其设计相应的系统,以达到上述的目的 1。图书管理信息系统是一项非常有意义的开发工作,具发展的潜力巨大,现今最好的办 法就是使用计算机操作的图书信息管理系统来

6、实现对图书馆的管理。图书管理信息系统的 出现将事图书管理员摆脱传统的手工操作,实现通过图书管理信息系统对图书进行高效率 地图书管理。在现实中,图书管理员要面对大量的图书信息和读者信息。因此需要对读者 信息和书籍信息进行管理,及时了解各个环节中信息的变更,要对因此而产生的单据进行 及时的处理,为了提高图书馆对图书存销的自动化的管理, 能够更快速的满足读者的要求, 提高各种工作的效率,现对其设计相应的系统,以达到上述的目的1。图书管理信息系统的主要功能是实现图书馆图书借阅和归还的管理的自动化。为了更好体现这个功能的作 用,本系统的核心功能是借阅管理和归还管理。另外还包括一些基本的辅助功能,它们分

7、别是:用户管理、图书馆参数管理、图书管理、统计查询。1.3 研究容1 .实现对所藏图书的按类别、书名等多方面的查询,使图书管理员和读者能更加方便 对所需图书的查询;2 .建立图书馆外借读者数据库,对读者的管理方便有效;3 .建立图书馆管理员数据库,每个管理人员都有不同的管理权限,对数据库保护的力 度大大加强;4 .建立书籍档案以便实现对新书的入库和旧书的删除,让管理员对藏书清单有直观的 了解;1.4论文组织本次毕业设计的目标是开发一个图书管理信息系统。通过本系统管理员可以快捷对数 据库和图书的信息资料进行管理,通过设置不同的用户权限对读者进行规化管理,通过统 计查询功能能是读者方便的查找所需图

8、书,使图书馆的资源得到最大的利用。本系统根据用户的权限不同,对图书的各种信息进行添加、删除、修改或查询操作。 论文分为五个部分:第一章为绪论,简述了图书管理信息系统这个课题的背景情况以及开发本系统的意 义。第二章为需求分析,简述了系统实现的各类功能,分析了系统的用例,并介绍所需的 相关开发工具和技术的情况。第三章是数据库设计,简述了数据库设计的重要性以及本系统的数据库详细的设计情 况。第四章为系统总体设计,通过展示主要功能模块的实现方法和部分关键代码,以及提 供了个主要界面运行的截图,能更加清晰地了解系统是如何实现的。第五章是软件测试,通过白盒和黑盒测试对本系统进行测试,并对测试结果进行记录

9、分析。最后为结论,总结这次毕业设计所获得的经验和收获。第二章.系统可行性分析与需求2.1 可行性分析为了能够设计出简洁实用的图书管理信息系统,让用户有更好的体验,减轻图书管理 员的工作量,实现高效率地图书管理。本次设计采用全球流行的计算机网络信息系统,本 系统可行性分析如下:2.1.1 技术可行性技术可行性分析是指分析技术条件能否地顺利完成本次设计,软件和硬件是否能满足 需要。本系统采用JSP开发出简洁美观的人机界面,以便用户理解与操作。本系统数据库 管理采用MySQL它能够及时地处理大量数据,同时保持数据的完整性和安全性。因此本 系统的开发平台是可行。硬件方面,在计算机科技飞速发展的今天,硬

10、件更新速度越来越 快,容量越来越大,可靠性越来越高,价格越来越便宜,因此硬件平台也能够满足本系统 所需2 o2.1.2 .经济可行性鉴于计算机技术发展异常迅猛,在硬件软件配置以及开发技术均以可行的情况下开发 这样一个管理系统成本不会很高,但是这个不仅可以提高图书馆的工作效率,也是图书馆管理发展的必然趋势,其必将有比较宽阔的市场,因此在经济可行性上也是可行的。2.2 系统需求概述2.2.1 系统目标本次毕业设计是建立一个基于B/S模式的图书管理信息系统,因此主要要实现以下目 标:1 .系统的界面简洁美观、方便用户操作。2 .图书信息分类能清晰简单、方便管理。3 .建立一个安全可靠的数据库存取数据

11、。4 .读者能直观地查询到所需图书的各类信息。5 .借书和归还图书能及时更新到数据库。6 .提供不同的权限设置,使不同权限的管理员明确地管理图书7 .让系统具有良好的维护性。8 .2.2用户类和用户特性图书管理信息系统是一个基于B/S模式的对图书信息进行高效率管理的应用系统,它的用户主要是读者和图书管理员,学生通过该系统进行图书查询进而对自己需要的图书进 行借阅及自己的借阅情况进行查询,图书管理员则通过本系统实现对图书及读者的高效管 理,除此之外,还需要一个系统管理员对不同的用户进行权限的设置等操作2。用户类的具体描述如下表所示:表2-1用户类具体描述用户类读者图书管理员系统员描述读者是系统的

12、重要的使用角色 ,他们通过查询自己需要的图书信息 ,并向管 理员提出借阅图书的申请进而借阅自己所需的图书,并且通过对自己借书情况进行查询。图书管理员是系统的另一个重要使用者,图书管理员通过系统进行图书的增加,修改,删除,分类管理等操作,实现对读者借阅归还续接图书的方便操作 ,实现 对系统中图书,读者,读者借阅情况的查询,信息更改维护等操作,管理读者类型, 对不同类型读者可借阅的图书数量进行设置等图书馆的基本操作。系统管理员主要是图书管理系统中用户的管理,实现用户添加修改删除以及用户权限设置等操作,实现对图书馆基本信息的修改维护等操作,还包括对图书馆书架的设置操作,以及校外读者办证所需费用、证件

13、有效期等参数的设置。2.3系统功能设计2.3.1 总体功能描述图书管理信息系统的主要任务是实现读者迅速检索查询,方便借阅归还图书,图书管 理员高效的完成系统的各项基本操作,系统管理员有管理用户设置权限等操作3,从图2.1 可以看出图书借阅管理系统要完成的功能:1 .登录功能:每个用户进入本系统都必须登录,用户名和密码验证正确了才可以进入本系统,每个 用户的系统使用权限是不同的,因此可以防止越权操作。2 .系统设置功能:系统管理员可以设置图书馆相关的参数信息。3 .用户管理功能:对系统用户进行添加,修改,删除,权限设置等操作。4 .查询功能:对图书馆的馆藏图书,借阅历史,读者用户等信息进行查询。

14、5 .其他功能系统管理员可以修改自己的密码,并且拥有其他用户所拥有的所有功能 下面的系统功能结构图描述了整个系统功能模块的概述。图书管理系统图2-1系统功能结构图图书借还2.3.2详细功能描述1 .读者管理功能:读者管理功能有读者类型和读者档案两个模块,读者类型可以对读者进行分类入 库,读者档案则保存相关读者信息到数据库中,两个模块都包含添加、删除、修改等操 作。2 .图书管理功能:图书管理功能有图书类型和图书档案管理两个模块,图书类型管理可以对图书进行 分类,而图书档案管理保存各类图书详细的信息。管理员可以添加、删除、修改图书的类型和档案。3 .图书借阅功能:读者可以完成对借阅图书,续接和还

15、书的操作。4 .系统查询功能:本功能包含图书借阅查询、图书档案查询和图书借阅到期提醒。图书借阅查询可以 根据图书名称、编号、图书类别等相关信息对所有图书进行查询,从而找到读者想要 借的图书。图书借阅到期提醒可以根据当前的时间和归还时间相对对比,如果在过应 归还的时间,系统会给出提醒。图书档案查询可以给出相应的图书信息而查询到有关 图书的详细信息。5 .修改密码功能:用户可以修改自己的登录密码。第三章.系统数据库设计3.1 数据库设计3.1.1 数据库概述数据库是整个系统的基石,数据库的设计优劣直接影响到整个系统的设计成败 ,本章 对数据库的设计进行专门阐述5。数据库是按照数据结构来组织、存储和

16、管理数据的仓库, 它产生于距今六十年前,随着信息技术和市场的发展,数据管理不再是仅仅局限于存储和 管理数据,而转变为用户所需的各种数据管理模式。数据库有很多类型,从最简单的存储 各种数据的表格到能进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应 用。数据库系统的出现使信息系统从以前单纯的手工添加加数据转变为数据可以共享的 新阶段。运用数据的批处理方式可以有效的提高数据的管理效率和程序的维护性,使数据 能更好的相容和利用,让决策更加可靠。数据库设计是把现实世界的实体模型与需求转换成数据库的模型的过程,它是建立数 据库应用系统的核心问题。数据库的数据是一切操作的基础,如果数据库设计不好,

17、导致 数据的处理性能低下,那么系统的所产生的数据将不能有良好的存储和使用,开发设计将 不能顺利地完成,所以数据库的设计是至关重要的。设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是式,式是符合某 一种级别的关系模式的集合。一般人们设计数据库遵循第三式。即:数据库表中不包含已 在其他表中包含的非主关键字信息。采用式减少了数据冗余,节约了存储空间,同时加快 了增、删、改的速度603.2 系统数据设计整个系统所包括的信息有图书信息、读者信息、留言信息、图书借阅信息、图书归还 信息、系统用户信息、读者类型信息。可将这些信息抽象为下列系统所需要的数据项和数 据结构:1 .图书信息(编二图书名

18、称,图书类型,作者,译者,ISBN号,价格,所在书架, 入库时间,操作员)。2 .图书类型(绸殳,名称,可借阅天数)。3 .读者信息(,性别,条形码,读者类型,出生年月,有效证件,证件,登记日期,“操作员)。4 .读者类型(名拄,可借阅图书本数)。5 .图书借阅信息(图书编号,读者ID,借出时间,应还时间,是否归还,操作员)。6 .图书归还信息(图书编号,读者ID,归还时间,操作员)。7 .用户(编号,用户名称,密码)。8 .图书馆信息(堂支,名称,馆长,,地址“创建日期,简介)。9 .图书馆参数信息(我支,办证费用,有效期限)。注:带下划线表示主键。在这里使用E-R图描述了图书借阅管理系统的

19、数据模型。图 3.1图书管理系统E-R图 描述了该系统所涉及到的实体以及他们之间的关系。具体结构如下图所示:密在证件骨妈)系统管理员图书管理员设置出版社图3-1系统E-R图3.3 数据表设计3.3.1 图书信息表结构设计图书信息表是用来存储图书相关信息,在图书入库时管理员对图书的相关信息进行添 加和完善,读者和管理员根据此表中图书的某个属性进行查询,便能知道图书的其它相关信息,其中图书的书架属性是方便在读者借阅时能快速找到图书,如果读者不慎将图书遗失时,图书价格是赔偿的依据。图书信息表的具体结构如下:参考资料.表3-1图书信息表tb_bookinfo字段名称数据类型字段长度是否为空说明barc

20、odevarchar30NoKeybooknamevarchar70No书名authorvarchar30Yes作者translatorvarchar30Yes译者ISBNvarchar20Nopricefloat8,2No图书价格bookcasevarchar10No图书所在书架pressvarchar70NointimedateNo图书入库时间operatorvarchar30No操作员pageint10Yes图书页他3.3.2 图书类型信息表结构设计该表的设计主要是为对进行图书的分类从而实现对图书的快捷查询,图书管理员可以根据图书类型的不同把图书列在不同的书架,让读者不用花大量时间寻找想

21、借的图书,其 中可借阅天数项设置了不同类型图书的借阅期限,可根据图书的具体情况进行不同的维护管理,表的具体结构设计如下:表3-2图书类型信息表 tb_booktype字段名称数据类型字段长度是否为空说明IDint10NoKeybooknamevarchar30No书名daysint10No可借阅天数3.3.3 读者信息表结构设计读者信息表的设计是为了图书馆管理员对读者进行管理,读者在借阅图书时需要输入参考资料.唯一的ID和证件进行身份识别,读者等信息是为了与读者进行联系,读者类型信息决定了读者一次性可借阅的图书的数量,注册时间可用于查询计算读者身份有效的期限,操作员是为了便于对信息才操作的查询

22、。读者信息表的具体结构设计如下:表3-3读者信息表tb_reader字段名称数据类型字段长度是否为空说明Idint10NoKeynamevarchar20Nosexvarchar4No性别barcodevarchar30No借阅证编号readertypevarchar11Notelvarchar20Yesvarchar100Yes电子paperTypevarchar10No证件类型PaperNO.Varchar20No证件birthdaydateYes出生日期intimedateNo登记时间operatorvarchar30No操作员3.3.4 读者类型信息表结构设计此表可以根据读者的身份不同

23、而进行分类,方便管理员对读者的管理。不同类型的读者一次可借阅图书数量是有限的。读者类型信息表的具体结构设计如下:表3-4读者类型信息表 tb_readertype字段名称数据类型字段长度是否为空说明IDint10NoKeyreadernamevarchar50Nonumberint4No可借图书本数3.3.5 图书借阅信息表结构设计该表的设计是用于对读者借阅图书进行管理,表中图书ID属性是对借阅图书的唯一性 识别标识,读者ID号记录借阅的相应读者,借出时间记录了相应的归还时间,以及归还时是 否超时,操作员是对借阅进行操作的人员的记录方便日后的查询,是否归还标识可查询当时读书是否被归还,图书借阅

24、信息表的具体结构设计如下:表3-5图书借阅信息表tb_borrow字段名称数据类型字段长度是否为空说明IDint10NoKeyreaderlDvarchar10No借阅证编号bookIDint10No图书编号borrowTimedateNo借出时间backTimedateNo归还时间operatorvarchar30No操作员ifbacktinyint1No是否归还3.3.6 图书归还信息表结构设计图书归还信息表和图书借阅信息表是相互对照的 ,该表的设计与图书借阅信息表有 点不同的是把借阅的图书与相应的借阅者的关系相互对应起来以外还记录了读者应归还 图书的时间,以此判断读者的借阅是否超过归还日

25、期。图书归还信息表的具体结构设计如 下:表3-6图书归还信息表 tb_giveback字段名称数据类型字段长度是否为空说明IDint10NoKeyreaderIDvarchar11No借阅证编号bookIDint11No图书编号backTimedateNo归还时间operatorvarchar30No操作员参考资料.3.3.7用户信息表结构设计该表的设计用于记录图书管理系统用户的信息,方便对用户的管理,表中包括用户ID和用户的登录密码。用户信息表的具体结构设计如下:表3-7用户信息表tb_user字段名称数据类型字段长度是否为空说明IDint10NoKeynamevarchar30No用户pa

26、sswordvarchar30No密码3.3.8 图书馆信息表结构设计该表包含了图书馆的名称,地址,联系方式,建馆时间,简介等信息,是对图书馆基本属 性信息的描述,方便外界读者对图书馆的了解。图书馆信息表的具体结构设计如下:表3-8图书馆信息表 tb_library字段名称数据类型字段长度是否为空说明IDint10NoKeylibrarynamevarchar50No图书馆馆名curatorvarchar10No馆长telvarchar20Yesaddressvarchar100No地址varchar100No电子urlvarchar100No图书馆createDatevarcharNo创馆时

27、间introducetextYes图书馆简介3.3.9 办证参数信息表结构设计该表是为校外人员设计的,对于需要到图书馆进行借阅的读者可办理临时的借阅证用 于对图书的借阅凭证,表中包含了办证所需费用以及证件的有效期限。办证信息表的具体 结果设计如下: 参考资料.表 3-12 信息表 tb_publishing字段名称数据类型字段长度是否为空说明IDint10NoKeyCostint10No办证费用validityint10No后效时间3.3.10 书架信息表结构设计该表是为保存书架信息,不同的书架放置不同类别的图书,方便读者的寻找。书架信 息表的具体结果设计如下:表3-10书架信息表tb_boo

28、kcase字段名称数据类型字段长度是否为空说明IDint10NoKeynamevarchar30No书架名称3.3.11 权限信息表结构设计该表用来保存管理员权限信息,不同类型的用户拥有不同的权限,系统员拥有所以的 权限。权限信息表的具体结构设计如下:表3-11权限信息表tb_purview字段名称数据类型字段长度是否为空说明IDint11NoKeysyssettinyint1Yes系统设置readersettinyint1Yes读者管理booksettinyint1Yes图书管理borrowbacktinyint1Yes图书借还sysquerytinyint1Yes系统查询3.3.12 信息

29、表结构设计该表包含了的名称,保存信息的描述。信息表的具体结构设计如下字段名称数据类型字段长度是否为空说明ISBNvarchar30YESKeypubnamevarchar30YES名称参考资料.第四章.系统总体设计与实现4.1 开发平台与工具4.1.1 Eclipse 平台Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是 一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括 Java开发工具(Java Development Kit , JDK)。在开发图书馆借阅 管理系统的过程中,应用eclipse ,它可

30、以在数据库和J2EE的开发、发布,以及应用程序 服务器的整合方面极大的提高工作效率。eclipse是功能丰富的J2EE集成开发环境,J2E E体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及 可扩展性的应用的需求。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复 杂性,同时提供对现有应用程序集成强有力支持,完全支持Enterprise JavaBeans ,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能90包括了完备的编码、调试、测试和发布功能,完整支持 HTML, Struts, JSF, CSS, Javascript, s

31、qL0 o4.1.2 WEB服务器和数据库1 .使用的 Web应用服务器是 Tomcat, Tomcat服务器是 Apache Group Jakarta 小组 开发的一个免费服务器软件,可以用于嵌入Apache中使用,而且它源代码是开放,我们可以自由地对它进行扩展和补充。Tomcat是一个小型的轻量级应用服务器, 它运行时占用 的系统资源小、扩展性好、支持负载平衡等开发应用系统常用的功能。因此在中小型系统 和并发访问用户不是很多的时候,经常被使用11Tomcat服务器的兼容性很好,如WebLogic 服务器采用其为 Wet®务器引擎,Jbuilder将其作为标准的测试服务器,Sun

32、公司也将其 作为JSP技术应用的示例服务器。2 .使用MySQL乍为数据库开发工具。MySQL1一个多用户、多线程的SQL数据库,是 一个客户机/服务器结构,开发者为瑞典 MySQLA公司,目前属于Oracle公司。MySQ比 一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在 一个大仓库,这样就增加了速度并提高了灵活性。MySQ所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策,它分为社区版和商业版,由于 其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型的开发都选 择MySQL乍为数据库。由于其社区版的性能卓越

33、,搭配PHP和Apache可组成良好的开发环境。3 .为了开发的便捷快速,使用 struts第三方插件。Struts是一个全新的MV(M架, 是由Apache软件基金会(ASF赞助的一个开源项目。它最初是 Jakarta项目中的一个子 项目struts流程并在2004年3月成为ASF的顶级项目。它通过采用JavaServlet/JSP 技 术,实现了基于Java EEWeb应用的MVCS计模式的应用框架,是 MVCS典设计模式中的 一个经典产品12 o4.2程序设计4.2.1 程序设计概述设计模式是程序设计人员用来解决编程问题的一种形式化表示。本系统Wet®开发采用目前广泛流行的软件

34、设计模式 MVC MVC(Model-View - Controller )应用程序结构被 用来分析分布式应用程序的特征。这种抽象结构能有助于将应用程序分割成若干逻辑部 件,使程序设计变得更加容易。其模型关系如图4.1所示。在设计中视图(View)有JSP来实现,为了业务逻辑和表示的分离.它是基于 Web应用系统,它的客户端使用Broswer,然 后是Web层的应用,业务逻辑层(有EJB实现),资源管理层。客户请求浏览页面,一般Web 层的View有JSP组成,并且使用了大量Taglib 。把每个请求映射到某个 HTMLAction类来 响应它。HTML Action类是一个标准的类,执行选择

35、的HTML Action。使用MVC真式帮助我 们有效地减少了代码的复制,即减少了代码的维护,而且模型返回的格式不带任何显示格 式,模型可以直接应用于接口的使用,还因为MVC真型把不同的模型和不同的视图组合在一起完成不同的请求,因此,控制层可以说包含了用户请求权限的概念13。图4-1 MVC模式图在设计中还应用了 Struts框架,Struts 是一款跟Tomcat、Turbine等诸多Apache项 目一样的开源软件,使开发者能更加深入的理解其部实现机制。除此之外,Struts的优点主要集中体现在Taglib和页面导航。Taglib是Struts的标 记库,设计人员灵活动用的话能有效提高开发

36、效率。页面导航使系统的脉络更加清晰。通 过一个配置文件,就能把握整个系统各部分之间的联系,这使程序后期的维护更加轻松11。4.2.2 数据库与Wet®务器的连接数据库连接时采用连接池技术MySQL.具体代码实现如下:public ConnDB()try Inputstream in=getClass().getResourceAsStream( propFileName);prop.load(in);/通过输入流对象加载Properties 文件dbClassName= prop.getProperty("DB_CLASS_NAME"); / 获取数据库驱动 db

37、Url = prop .getProperty("DB_URL","jdbc:mysql:/:3306/db_librarySys?user=root&password=123&useUnicode= true");catch (Exception e) e.printStackTrace();/ 输出异常信息public static Connection getConneoctin() Connection conn = null;try Class. forName( dbClassName.newInstance

38、();conn = DriverManager. getConnection (dbUrl);catch (Exception ee) ee.printStackTrace();if (conn = null) System. err .println(" 警告:DbConnectionManager.getConnection()获得数据库失败.rnrn 类型:"+dbClassName+ "rn 位置:"+ dbUrl);return conn;/*功能:执行查询语句*/public ResultSet executeQuery(String sql

39、) try conn = getConnection();stmt = conn.createStatement(ResultSet. TYPE_SCROLL_INSENSIT,VE ResultSet. CONCUR_READ_ONLYrs = stmt.executeQuery(sql); catch (SQLException ex) System. err .println(ex.getMessage();return rs;/*功能:执行更新操作*/public int executeUpdate(String sql) int result = 0;try conn = getCo

40、nnection();/ 调用 getConnection() 方法构造Connection对象的一个实例connstmt = conn.createStatement(ResultSet. TYPE_SCROLL_INSENSIT|VE ResultSet. CONCUR_READ_ONLYresult = stmt.executeUpdate(sql);/ 执行更新操作 catch (SQLException ex) result = 0;return result;/*功能:关闭数据库的连接*/public void close() try if (rs != null) rs.clos

41、e();if (stmt != null) stmt.close();if (conn != null) conn.close(); catch (Exception e) e.printStackTrace(System. err); 4.2.3 登录模块设计本模块的功能是用户通过它进入图书管理信息系统。打开IE浏览器,输入:8080/JspLibrary/login.jsp 。用户输入正确的用户名和密码后就可以进入系 统操作页面,不同的用户可进行的操作权限不同;如果输入的用户名和密码错误的话,系 统会给出相应的错误提示,用户不能进入系统进行操作。图书管理信息系统的登录主页

42、面 如图4-2所示。图4-2图书管理信息系统登录首页用户在登录页面写好用户名:tsoft和密码:1 ,然后点击确定,登录成功则跳转到系 统的首页,否则提示错误信息。判断写好用户名和密码的语句:function check(form)if (.value="")alert("请输入用户名!");.focus();return false;if (form.pwd.value="")alert("请输入密码!");form.pwd.focus();return false;在服务器端

43、进行用户身份验证的程序流程图如图4-3程序流程图所示:图4-3用户登录流程图4.2.4 系统主界面设计本图书管理信息系统主界面中有首页、图书借还、读者管理、图书管理、系统查询系 统设置、更改口令、退出系统这几个模块。其中每个模块的下拉列表包含了管理员设置、 图书馆信息、书架设置等功能。在界面的左右两端分别显示当前日期时间和用户名称,系 统首页主要显示了图书借阅排行榜,方便管理员查看借阅情况,读者对哪些图书感兴趣, 有效的管理图书。系统主界面如图 4-4所示:,IX图4-4系统主界面图4.2.5 系统管理模块设计本模块包含图书馆信息、管理员设置、书架设置和办证参数设置,其中最主要的是管理 员设置

44、模块,它根据分配权限来管理系统用户,可对他们进行添加,修改,删除。其中操作页面如下图所示:图4-5系统管理员管理用户操作界面其中对系统用户权限的设置是该操作的重要部分也是系统提高效率的关键所在,起具 体实现代码为:private ActionForward managerModify(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) ManagerForm managerForm = (ManagerForm) form;managerForm.se

45、tId(managerForm.getId();/ 获取并设置管理员 ID号managerForm.setName(managerForm.getName(); /获取并设置管理员名称 managerForm.setPwd(managerForm.getPwd(); /获取并设置管理员密码managerForm.setSysset(managerForm.getSysset(); / 获取并设置系统设置权限 managerForm.setReaderset(managerForm.getReaderset(); /获取并设置读者管理managerForm.setBookset(managerF

46、orm.getBookset(); /获取并设置图书管理权ImanagerForm.setBorrowback(managerForm.getBorrowback(); / 获取并设置图书借 还权限managerForm.setSysquery(managerForm.getSysquery(); / 获取并设置系统查询权Iint ret = managerDAO.update(managerForm); /调用设置管理员权限的方法if (ret = 0) request.setAttribute("error", "设置管理员权限失败! ");/保存错

47、误提示 信息到error参数中return mapping.findForward("error");/转至 U错误提示页面 else return mapping.findForward("managerModify"); / 转至U权限设置成功页 面4.2.6 读者管理模块设计读者管理有读者类型管理和读者信息管理两个子模块,其中管理员可以在读者类型管 理设置不同类型读者一次性可借阅的图书数量,读者信息管理则主要管理维护读者的基本 信息,其各自操作界面如下所示:1 .读者类型管理功能界面:参考资料.图4-6读者类型管理操作界面2 .读者信息管理功能界面

48、:一4 廨口 曲 U野,- 0!&®Ml-4一<! “- r5Kl- * ESR - «* s 于 4口:上通壮F4*一。电气卡电 一 " 1 "* . *®ih:i * 一 工M j S s博电iff理倍叁均iH管理 ,=言J*.加息品H典俭日一匕叶门诅缶研渤诺EjtuA'gZ制卡典竽生学生证丹M5事21 JjQm u«iiimb事物一带修1 值1修】?乂$nrm。Lkn4 -.r wC 立 rn*t I AlEI竹 嫡由 A *%,%图4-7读者信息管理界面该管理功能在填写读者信息时需要输入读者、性别、有效证

49、件、等等相关信息3 .2.7系统查询模块设计查询功能模块包括图书查询,读者借阅查询和借阅到期提醒三个子功能模块。1 .图书查询可根据图书的条形码,书名,作者,等不同信息进行查询,具操作界面图 下图所示:图4-8图书查询操作界面实现该功能中根据读者不同需求的按条件查询实现语句如下:public Collection query(String strif)BookForm bookForm=null;Collection bookColl=new ArrayList();String sql=""if(strif!="all" && stri

50、f!=null && strif!="")sql="select * from (select b*, as bookcaseName,p.pubname as publishing,t.typename from tb_bookinfo b left join tb_bookcase c on b.bookcase=c.id join tb_publishing p on b.ISBN=p.ISBN join tb_booktype t on b.typeid=t.id where b.del=0) as book where boo

51、k."+strif+"'"elsesql="select b.*, as bookcaseName,p.pubname as publishing,t.typename from tb_bookinfo b left join tb_bookcase c on b.bookcase=c.id join tb_publishing p on b.ISBN=p.ISBN join tb_booktype t on b.typeid=t.id where b.del=0"一System. out .println("图书

52、查询时的 SQL "+sql);ResultSet rs=conn.executeQuery(sql);try while (rs.next() bookForm=new BookForm();bookForm.setBarcode(rs.getString(1);bookForm.setBookName(rs.getString(2);bookForm.setTypeId(rs.getInt(3);bookForm.setAuthor(rs.getString(4);bookForm.setTranslator(rs.getString(5);bookForm.setIsbn(rs

53、.getString(6);bookForm.setPrice(Float.valueOf (rs.getString);此处必须进行类型转换bookForm.setPage(rs.getInt(8);bookForm.setBookcaseid(rs.getInt(9);bookForm.setInTime(rs.getString(10);bookForm.setOperator(rs.getString(11);bookForm.setDel(rs.getInt(12);bookForm.setId(Integer. valueOf (rs.getString(13);bookForm.

54、setBookcaseName(rs.getString(14);bookForm.setPublishing(rs.getString(15);bookForm.setTypeName(rs.getString(16); bookColl.add(bookForm); catch (SQLException ex) ex.printStackTrace(); conn.close();return bookColl; 2 .借阅查询功能是对图书当前状态和读者当前的借阅情况进行查询,具有此权限的用户登录并进入该操作界面后输入相应的查询信息,系统即可在页面显示被查询的图书的状态,或以及借该图书的读者是否归还了图书,此外还可以输入相应时间段的所有借阅清单 或选择某个读者查询他在某个时间段的借阅情况,整个模块功能操作界面为:图4-9借阅查询操作界

温馨提示

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

评论

0/150

提交评论