基于JSP的图书管理系统设计说明书毕设.docx
- 文档编号:7120890
- 上传时间:2023-01-20
- 格式:DOCX
- 页数:35
- 大小:717.14KB
基于JSP的图书管理系统设计说明书毕设.docx
《基于JSP的图书管理系统设计说明书毕设.docx》由会员分享,可在线阅读,更多相关《基于JSP的图书管理系统设计说明书毕设.docx(35页珍藏版)》请在冰豆网上搜索。
基于JSP的图书管理系统设计说明书毕设
基于JSP的图书管理系统
摘要
随着科学技术的进步,计算机行业的迅速发展,大大提高人们的工作效率。
计算机信息处理系统的引进已彻底改变了许多系统的经营管理,使其高效的发挥最大作用,能够迅捷的为用户提供相应的服务。
图书管理系统是学校管理机制中的重要组成部分,通过对图书管理系统的运行管理机制进行调查研究,开发了此图书系统。
本系统中解决了学校图书管理事务中的常用基本问题以及相关统计工作。
本系统中包含6个功能模块:
系统设置,读者管理,图书管理,图书借还,系统查询和更改口令。
本系统使有jsp进行网页界面的设计,使用MVC设计模式,采用了开源框架Struts,它采用了当今软件设计的最新技术,具有开发效率高、设计灵活、生成的软件界面友好美观等特点。
本系统中通过JDBC驱动和数据库进行无缝连接,后端的数据库是mysql,也是一个开源的数据库系统,该数据库具有较高的完整性,一致性和安全性。
关键词:
图书管理,信息管理,jsp,struts
ABSTRACT
Withthescientificandtechnologicalprogress,therapiddevelopmentofthecomputerindustryhasgreatlyenhancedtheefficiencyofthepeople.Theintroductionofcomputerinformationprocessingsystemhascompletelychangedthemanagementofmanysystems,makingitmostusefulandefficient,abletoprovidepromptservicefortheuser.
Librarymanagementsystemistheschoolmanagementinanimportantpartoflibrarymanagementsystemthroughthemechanismofoperationandmanagementofresearchanddevelopmentofthislibrarysystem.Solvethissystemintheschoollibrarymanagementservicesandrelatedbasicissuescommonstatistics.Thesystemincludessixmodules:
systemsettings,thereadermanagement,librarymanagement,librarycirculation,thesystemqueriesandchangethepassword.
Thesystemmakesajspforwebinterfacedesign,theuseofMVCdesignpattern,usingtheopensourceframeworkStruts,itusesthelatesttechnologyoftoday'ssoftwaredesign,withthedevelopmentofhighefficiency,designflexibility,user-friendlysoftwareisgeneratedsobeautiful.ThesystemanddatabasethroughJDBCdriverseamlesslyconnectback-enddatabaseismysql,butalsoanopensourcedatabasesystem,thedatabasehashighintegrity,consistencyandsafety.
Keywords:
bookmanagement,managementofinformation,jsp,struts
第1章JSP的功能
JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
1.1JSP语言简介
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与JavaServlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。
目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。
利用JSP技术,动态信息由JSP页面来表现,JSP页面由安装在Web服务器或者使用JSP的应用服务器上的JSP引擎执行。
JSP引擎接受客户端对JSP页面的请求,并且生成JSP页面作为对客户端的响应。
JSP页面通常被编译成为JavaServlets,这是一个标准的Java扩展。
页面开发人员能够访问全部的Java应用环境,以利用Java技术的扩展性和可移植性。
当JSP页面第一次被调用时,如果它还不存在,就会被编译成为一个JavaServlets类,并且存储在服务器的内存中。
这就使得在接下来的对该页面的调用中,服务器会有非常快的响应(这避免了CGI-BIN为每个HTTP请求生成一个新的进程的问题)。
JSP页面可以包含在多种不同的应用体系结构或者模型中,可以用于由不同协议、组件和格式所组成的联合体中。
基于JSP的动态信息发布技术是一个开放的、可扩展的建立动态Web页面的标准。
不论采用什么创建工具,开发人员都可以使用JSP页面来创建可移植的Web应用,在不同的Web应用服务器上运行。
Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。
它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。
Servlet是位于Web服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。
Servlet是在服务器上运行的小程序。
这个词是在Javaapplet的环境中创造的,Javaapplet是一种当作单独文件跟网页一起发送的小程序,它通常用于在客户端运行,结果得到为用户进行运算或者根据用户互作用定位图形等服务 服务器上需要一些程序,常常是根据用户输入访问数据库的程序。
这些通常是使用公共网关接口(CGI(CommonGatewayInterface))应用程序完成的。
然而,在服务器上运行Java,这种程序可使用Java编程语言实现。
在通信量大的服务器上,Javaservlet的优点在于它们的执行速度更快于CGI程序。
各个用户请求被激活成单个程序中的一个线程,而无需创建单独的进程,这意味着服务器端处理请求的系统开销将明显降低。
最早支持Servlet技术的是JavaSoft的JavaWebServer。
此后,一些其它的基于Java的WebServer开始支持标准的ServletAPI。
Servlet的主要功能在于交互式地浏览和修改数据,生成动态Web内容。
Servlet看起来像是通常的Java程序。
Servlet导入特定的属于JavaServletAPI的包。
因为是对象字节码,可动态地从网络加载,可以说Servlet对Server就如同Applet对Client一样,但是,由于Servlet运行于Server中,它们并不需要一个图形用户界面。
从这个角度讲,Servlet也被称为FacelessObject。
一个servlet就是Java编程语言中的一个类,它被用来扩展服务器的性能,服务器上驻留着可以通过“请求-响应”编程模型来访问的应用程序。
虽然servlet可以对任何类型的请求产生响应,但通常只用来扩展Web服务器的应用程序。
2.1可行性分析
采用现代化统一的计算机信息网站系统,能够有效优化图书馆管理系统,使其高效的发挥最大作用,能够迅捷的为读者提供相应的服务。
开发本系统的可行性研究如下。
2.1.1技术可行性
技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软、硬件能否满足需要。
本系统采用JSP开发出友好美观的人机界面,便于用户理解、操作。
数据库管理系统采用MySQL,它能够处理大量数据,同时保持数据的完整性、安全性。
因此本系统的开发平台已成熟可行。
硬件方面,在科技飞速发展的今天,硬件更新速度越来越快,容量越来越大,可靠性越来越高,价格越来越便宜,因此硬件平台也能够满足本系统所需。
2.1.2经济可行性
鉴于计算机技术发展异常迅猛,在硬件软件配置以及开发技术均以可行的情况下开发这样一个管理系统成本不会很高,但其可以大大提高图书馆的工作效率,也是图书馆管理发展的必然趋势,其必将有比较宽阔的市场,因此改性统在经济可行性上时可行的。
2.2图书借阅管理系统需求概述
2.2.1系统目标
该系统主要建立一个基于B/S模式的图书馆借阅管理系统,面对当起很多小型图书管理仍是人工管理带来的检索速度慢,效率低,借阅归还图书量大,图书统计工作量大,藏书不能完成及时更新的问题,该系统可以对跟系统的三个用户类型的使用实现:
1)对于读者在本系统的应用下可实现按照各种方式(如:
书名,编号,作者)查询图书馆的藏书请客,方便的借阅图书,续借图书,归还图书,能够查询自己的借阅图书情况。
2)对于图书馆工作人员能够实现方便的对图书进行查询,方便的进行读者借阅情况查询,方便的进行借书还书处理等,便捷的对图书信息进行添加、修改、删除,分类管理等操作,对读者信息进行相关添加,修改,分类管理等操作。
3)对于系统管理员可以对图书馆信息进行修改更新操作,对系统用户进行添加、修改、删除、权限设置等操作,对图书馆的办证参数进行修改维护等操作功能。
2.2.2用户类和用户特性
图书借阅管理系统是一个基于B/S模式的对图书馆进行高效率管理的应用系统,它的用户主要是读者和图书管理员,学生通过该系统进行图书查询进而对自己需要的图书进行借阅及自己的借阅情况进行查询,图书管理员则通过本系统实现对图书及读者的高效管理,除此之外,还需要一个系统管理员对不同的用户进行权限的设置等操作。
三类用户的具体描述如下表2.1所示。
表2.1用户具体描述
用户类
描述
读者
读者是该系统的重要的使用角色,他们通过该系统查询自己需要的图书信息,并像图书管理员提出借阅图书的申请进而借阅自己所需的图书,还可以通过对自己借阅情况进行查询。
图书管理员
图书管理员是该系统的另一个重要使用者,图书管理员通过该系统进行图书的增加,修改,删除,分类管理等操作,实现对读者借阅归还续接图书的方便操作,实现对系统中图书,读者,读者借阅情况的查询,信息更改维护等操作,管理读者类型,对不同类型读者可借阅的图书数量进行设置等图书馆的基本操作。
系统员
系统管理员主要是图书管理系统中用户的管理,实现用户添加修改删除以及用户权限设置等操作,实现对图书馆基本信息的修改维护等操作,还包括对图书馆书架的设置操作,以及校外读者办证所需费用、证件有效期等参数的设置。
2.3图书借阅管理系统需求模型
2.3.1功能描述
图书借阅管理系统的主要任务是实现读者迅速检索查询,方便借阅归还图书,图书管理员高效的完成系统的各项基本操作,系统管理员是管理用户设置权限等操作,从图2.1可以看出图书借阅管理系统要完成一下功能:
1)登录:
读者、图书管理员,系统管理员进入该系统必须登录,身份验证正确了才可以进入该系统,以不同身份进入该系统所对应的系统使用权限是不同的。
2)系统设置功能:
系统管理员可以设置图书馆相关的参数信息。
3)用户管理功能:
对系统用户进行添加,修改,删除,权限设置等操作。
4)查询功能:
对图书馆的馆藏图书,借阅历史,读者用户等信息进行查询。
5)其他功能:
系统管理员可以修改自己的密码,并且拥有其他用户所拥有的所有功能。
2.3.2图书管理员详细功能描述
1)读者管理功能:
对读者的类型和读者档案进行管理,包括添加,修改,删除读者类型和读者用户的相关信息,管理不同类型读者借阅图书的数量。
2)图书管理功能:
包括对图书类型和具体图书信息的管理,可以增加,修改,删除图书,丰富具体图书的信息,对不同图书进行分类操作。
3)图书借阅功能:
可以完成对读者借阅,续接和还书的操作。
4)系统查询功能:
查询图书相关资料,借阅历史和借阅到期题型.
5)修改密码功能:
可以修改自己的登录密码。
2.3.3主要用例的用例描述
图书借阅借阅管理系统涉及到的用例包括:
图书借阅,图书归还,读书查询,读者信息管理,图书信息管理,用户管理等,现就系统的主要用例图书借阅,图书归还,图书查询进行详细分析。
1)用例“图书借阅”,如表2.2所表示。
表2.2图书借阅
用例名称
图书借阅
参与者
读者,图书管理员
描述
读书可以通过查询等方式获得自己想借阅的图书的名称,编号,等其他可唯一识别的信息,向图书管理员提出借阅请求,管理员在系统中记录相应信息,将图书交给读者,借阅成功。
前置条件
1.登录;2.进入图书借阅的页面
后置条件
1.更新图书借阅列表;
主干过程
1.0借阅图书
1.读者请求借阅新地图书,并提供自己的编号
2.系统显示读者借阅情况的表单
3.读者提供想借阅的图书的标号
4.系统存储读者和借阅的图书,并将之存储到数据库中
5.系统更新借阅列表
分支过程
1.1选择重置(第3步后分支出来)
1.读者选择重置
2.系统刷新该页面
异常
1.0.E.1读者借阅已满(第2步)
1.读者借阅的数目已经到达自己借阅的上线
2.系统将错误信息显示在借阅页面
3.系统重新启动该用例
被包含用例
无
被扩展用例
无
优先级
高
2)用例“图书归还”,如表2.3所表示。
表2.3图书归还
用例名称
图书归还
参与者
读者,图书管理员
描述
读者将自己借阅的图书归还图书馆。
前置条件
1.登录;2.进入图书归还页面
后置条件
1.更新图书归还列表;
主干过程
2.0图书归还
6.读者请求归还借阅的图书并提供自己的编号
7.系统显示该读者的借阅信息表
8.使用者填将要归还的图书交给管理员
9.管理员输入图书编号,系统存储归还信息,并将之存储到数据库中
10.系统更图书归还列表
分支过程
1.1选择重置(第3步后分支出来)
1.读者选择重置
2.系统刷新该页面
异常
1.0.E.1读者借阅超时(第4步)
1.该书超出了应该归还的时间范围
2.系统将罚款信息显示在归还页面
3.需要缴纳罚金
被包含用例
无
被扩展用例
无
优先级
高
3)用例“图书查询”,如表2.4所表示。
表2.4图书查询
用例名称
图书查询
参与者
读者,图书管理员
描述
读者通过图书的标号,名称等信息对相应的图书进行查询。
前置条件
1.登录;2.转到图书查询页面
后置条件
1.查询页面显示相应的图书的信息
主干过程
图书查询
1.读者输入想要查询的图书信息
2.系统显示相应的图书信息
3.读者点击读书名称,跳转到图书详细信息链接页面
分支过程
输入信息时(第2步后)
系统显示:
请选择查询依据
用户进行相应选择
重新查询(第2步后)
系统已经显示了相应图书信息
读者想查询其他图书
异常
查询的图书不存在(第2步后)
1.读者输入的图书信息不能在数据库中查询到
2.系统显示暂时无该图书信息
3.重新启动该用例
被包含用例
无
被扩展用例
无
优先级
高
第3章系统总体设计
3.1数据库设计
3.1.1数据库设计概述
数据库是整个系统的基石,数据库的设计优劣直接影响到整个系统的设计成败,本节对数据库的设计进行专门阐述。
数据库是数据管理的最新技术。
十多年来数据库管理系统已从专用的应用程序发展成为通用的系统软件。
由于数据库具有数据结构化,最低冗余度,较高的程序与数据独立性,易于扩充,易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。
因此不仅大型计算机及中小型计算机,甚至微型机都配有数据库管理系统。
数据库系统的出现使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的新阶段。
这样既便于数据的集中管理,又有利于应用程序的研制和维护,提高了数据的利用性和相容性,提高了决策的可靠性。
目前,数据库已经成为现代信息系统不可分割的重要组成部分。
数据库技术也是计算机领域中发展最快的技术之一。
数据库设计是把现实世界的实体模型与需求转换成数据库的模型的过程,它是建立数据库应用系统的核心问题。
数据库及其应用的性能都建立在良好的数据库设计的基础之上,数据库的数据是一切操作的基础,如果数据库设计不好,那么其它一切用于提高数据库性能的方法收效都是有限的。
数据库设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。
设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是范式,范式是符合某一种级别的关系模式的集合。
一般人们设计数据库遵循第三范式。
即:
数据库表中不包含已在其他表中包含的非主关键字信息。
采用范式减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度。
整个系统所包括的信息有图书信息、读者信息、留言信息、图书借阅信息、图书归还信息、系统用户信息、读者类型信息。
可将这些信息抽象为下列系统所需要的数据项和数据结构:
1)图书信息(编号,图书名称,图书类型,作者,译者,ISBN号,价格,出版社,所在书架,入库时间,操作员)
2)图书类型(编号,名称,可借阅天数)
3)读者信息(编号,姓名,性别,条形码,读者类型,出生年月,有效证件,证件号码,登记日期,电话,邮箱,操作员)
4)读者类型(名称,可借阅图书本数)
5)图书借阅信息(图书编号,读者ID,借出时间,应还时间,是否归还,操作员)
6)图书归还信息(图书编号,读者ID,归还时间,操作员)
7)用户(编号,用户名称,密码)
8)图书馆信息(编号,名称,馆长,电话,地址,邮箱,创建日期,简介)
图书馆参数信息(编号,办证费用,有效期限)
注:
带下划线表示主键,波浪线表示外键。
3.1.2图书信息表结构设计
图书信息表主要用于存储图书馆中所藏图书的相关信息,其中的相关信息是在图书入库时由操作员进行添加完善,此表主要用于读者和图书管理员对馆中图书的查询,系统用户根据图书的某个属性进行查询,便可得知图书的其他相关信息,其中图书所在书架属性是便于读者借阅时对图书的寻找,图书价格是在读者不慎将图书遗失时对遗失图书进行赔偿的依据。
表的具体结果如表3.2所示。
表3.2图书信息表
字段名称
数据类型
字段长度
是否为空
说明
barcode
varchar
30
No
Key
bookname
varchar
70
No
author
varchar
30
Yes
作者
translator
varchar
30
Yes
译者
ISBN
varchar
20
No
price
float
8,2
No
图书价格
bookcase
varchar
10
No
图书所在书架
press
varchar
70
No
出版社
intime
date
No
图书入库时间
operator
varchar
30
No
操作员
page
int
10
Yes
图书页码
3.1.3图书类型信息表结构设计
该表的设计主要是方便对图书的分类,和对图书的查询,在实际应用中图书管理员就是根据图书类型的不同将之分列在不同的书架,以方便读者的借阅寻找,其中可借阅天数项设置了不同类型图书的借阅期限,可根据图书的具体情况进行不同的维护管理,表的具体结构设计如表3.3所示。
表3.3图书类型信息表
字段名称
数据类型
字段长度
是否为空
说明
ID
int
10
No
Key
bookname
varchar
30
No
days
int
10
No
可借阅天数
3.1.4读者信息表结构设计
读者信息表的设计是为了图书馆管理员对读者进行管理,其中读者ID,不同类型证件的号码都是唯一的,是读者在借阅图书时需要输入对读者身份进行识别的信息,读者邮件电话等信息室为了与读者进行联系,读者类型信息决定了读者一次性可借阅的图书的数量,注册时间可用于查询计算读者身份有效的期限,操作员是为了便于对信息才操作的查询。
表的具体结构设计如表3.4所示。
表3.4读者信息表
字段名称
数据类型
字段长度
是否为空
说明
Id
int
10
No
Key
name
varchar
20
No
sex
varchar
4
No
barcode
varchar
30
No
readertype
varchar
11
No
读者类型
tel
varchar
20
Yes
电话
varchar
100
Yes
paperType
varchar
10
No
证件类型
PaperNO.
Varchar
20
No
证件号码
birthday
date
Yes
intime
date
No
登记时间
o
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 JSP 图书 管理 系统 设计 说明书