计算机科学与技术基于BS模式的学校图书管理系统的实现 最终稿文档格式.docx
《计算机科学与技术基于BS模式的学校图书管理系统的实现 最终稿文档格式.docx》由会员分享,可在线阅读,更多相关《计算机科学与技术基于BS模式的学校图书管理系统的实现 最终稿文档格式.docx(29页珍藏版)》请在冰豆网上搜索。
窗体顶端
KeyWordsBooksmanagementsystem;
B/Smodel;
MySQL
目录
第一章绪论1
1.1研究背景1
1.2研究目的及意义1
1.3关键技术1
1.3.1JSP技术2
1.3.2MYSQL3
1.3.3MVC简介3
1.4本文工作及安排4
第二章需求分析5
2.1用户需求分析5
2.2系统功能分析5
2.2.1管理员工作流程5
2.2.2用户工作流程5
2.3本章小结6
第三章系统设计7
3.1系统功能结构图7
3.2数据库设计7
3.2.1系统E-R图8
3.2.2数据库表结构9
3.3本章小结13
第四章系统实现15
4.1前台功能实现15
41.1管理员登录页面15
4.1.2登录后首页页面15
4.1.3图书借还页面16
4.1.4系统查询16
4.2后台功能实现17
4.2.1系统设置页面17
4.2.2读者管理页面18
4.2.3图书管理页面19
4.2.4更改口令20
4.3本章小结20
第五章系统测试21
5.1系统测试21
5.2系统测试用例21
5.3测试结果22
5.4本章小结23
第六章结束语25
参考文献27
致谢29
第一章绪论
1.1研究背景
从近几年来看,当今社会高新技术迅速发展,互联网通讯技术的崛起,推动了社会的发展,人类进入信息社会。
现如今社会,是互联网传播信息的社会,最大的信息处理技术依靠的互联网在计算机上强大功能。
图书馆作为一个拥有强大信息收集和发散的地方,其网络化管理能够解决传统人工记录上出现的查询中的所出现的数据量太大不易查询,容易出现纰漏,以及查询后所记录的信息出现错误等等更多的问题。
使图书管理工作更加规范,更加系统,更加程序化,其强大的推动社会的作用对于整个社会是不容忽视的。
因此系统设计的好坏程度决定了图书管理功能的强弱。
1.2研究目的及意义
本系统的设计目标:
主要是通过运用B/S结构,框架主要依据的是struts框架,开发的模式主要为MVC模式[1],以及结合数据库进行数据的存储来开发设计图书管理系统。
该系统设计所要实现的功能有六大模块,进入系统后,管理员的身份被验证后登入系统对系统进行的操作,系统的设置,图书信息的管理以及读者借阅的管理都由管理员进行管理。
管理之后系统显示出借阅排行榜。
管理员登陆后对图书进行管理,读者通过自己的行使权限,进入系统后可以对图书信息的查询,以及排行榜的查询,外加图书信息的查询进行有选择性的借阅。
本系统主要是基于原来系统的改进,不但增加新的功能,对管理进行一体化,使管理者更加方便快捷的管理,使读者服务功能显得更加灵活方便。
本系统使管理工作更加规范程序化,其带来的优势即:
系统对于各种用户所行使的功能权限可以使图书管理、借阅、查询更加方便、快捷、准确。
可以使该系统具备更佳的竞争优势。
系统设计的特点:
系统实现了可行性分析[2],即技术可行性、经济可行性、操作可行性、法律可行性;
系统更加规范一体化,便于管理,系统的可视界面更加具备视觉性,存储的数据更加可靠安全。
系统设计的意义:
设计本系统,不仅可以使图书管理更加方便,也使读者更加更加容易掌握信息,同时也可以让我对系统设计所要掌握的技能有了更进一步的学习,对自己以后从事开发行业有了一定的帮助。
1.3关键技术
本系统开发的主要语言是[3]Java,Java之父詹姆斯.高斯林.Java是开发语言的基础,Java语言是美国sunMicrosytem公司于1995年正式推出的、面向对象的程序设
计语言。
Java语言具有简单、稳定、与平台无关、安全、解释执行、多线程等特点,除了用于开发大型程序,也可用于开发手机、数字机顶盒、是目前应用最为广泛的编程语言。
Java是一种简单易用、面向对象、分布式计算、解释执行、健壮性、安全性、结构无关性、可移植性、多线程、动态性的语言。
Java分为三个体系,分别为JavaSE(J2SE,Java2PlatformStandardEdition,标准版)[4],JavaEE(J2EE,Java2Platform,EnterpriseEdition,企业版),JavaME(J2ME,Java2PlatformMicroEdition,微型版)。
1.3.1JSP技术
JSP技术由原SunMicrosystems公司(现已被Oracle购)倡导的JSP(JavaServerPages)被作为许多公司参与建立的一种动态网页技术标准。
JSP文件是被插入Java程序段(scriplet)和JSP标记(tag)的传统的的网页HTML文件(*.htm,*.html)由JSP形成的。
许多操作系统都可以在用JSP开发的Web应用的跨平台下运行,例如Linux操作系统。
类XML的tag和scriptlet由Java编程语言编写使用的是JSP技术,动态网页的处理逻辑由JSP技术进行封装。
服务器短的资源的应用逻辑被tag和scriptlet存在的网页进行访问。
存在于是通过。
网页逻辑与网页设计由JSP显示分离,JSP是一项支持可重用的基于组件的设计。
Web的应用程序的开发使用了JSP技术后可以开发更加快捷与简单[5]。
当JSP网页请求被Web服务器访问时,程序段作为第一个步骤进行访问,然后客户会接收到连同JSP文件中的HTML代码的执行结果,插入的Java程序段主要实现的功能包括对数据库的操作、网页的重新定性、实现动态网页的建立。
在服务器端执行的有两种技术:
JSP和JavaServlet,客户端得到的是一个可以用浏览器浏览的HTML文本[6]。
JSP页面的执行过程一般可以分为6步:
(1)客户端首先经过Web浏览器对[7]JSP服务器做出请求。
(2)JSP服务器接着查询有没有Servlet的源程序与JSP页面能相对应的,如果存在就接着往下走,否则就跳转到(4)。
(3)JSP服务器检查JSP页面是否有更新修改,若存在更新修改则继续下一步,否则转至(5)。
(4)JSP服务器把JSP程序转变成Servlet的源程序。
(5)JSP服务器把Servlet的源程序通过编译后加载到内存中执行。
将产生的结果返回至客户端。
1.3.2MYSQL
MySQL以一个对象来存储数据,它是当前运用最为广泛的是小型关系型数据库管理系统,瑞典[8]MySQLAB公司开发了MySQL。
Sun公司于2008年1月16号将其收购。
而SUN公司于2009年又被Oracle收购。
数据库管理系统主要实现的是将操作系统与用户连接起来进行管理的软件。
数据库管理系统包含了六个功能模块:
数据的定义、数据操纵、数据库运行与控制、数据库建立于维护、数据字典定义、数据通信。
MySQL具有很多特点,最为明显的特点即:
它开放了源代码,运行速度很快,它总体的花费成本也很低且体积小,占用的内存不多。
作为网站数据库服务与中小型网站,欢迎度很高。
SQL语言的分类:
(1)数据定义语言:
用于定义、修改、删除数据库对象。
(2)数据操纵语言:
用于改变数据库中的数据。
(3)数据查询语言:
用于数据检索。
(4)事务控制:
用于将一组DML操作组合起来。
(5)系统控制:
用于设置数据库系统参数。
(6)会话控制:
用于设置用户会话相关参数。
SQL语言的特点:
(1)功能一体化。
(2)高度的非过程化。
(3)面向集合的操作方式。
(4)多种使用方式。
(5)简洁易学。
1.3.3MVC简介
MVC由三个层次组成即:
Model(模型)、View(视图)、Controller(控制器)。
视图层负责页面的显示工作,而控制层负责处理及跳转工作,模型层负责数据的存取,这样他们的耦合性就大大降低了,应用的可扩展性及可维护性将被大大的提高。
虽然如此,程序员还是有很多工作要做,而且代码的书写也没有一定的规范,不同的程序员可以写出不同的代码,这对于扩展及维护是非常不方便,这个时候框架也就呼之欲出了。
作为一个模式,model就是一个普通的类,所以并不确定它是什么语言,以为MVC是一种模式,与语言无关[9]。
View即视图,视图用于页面的展示,主要使用htmldiv+css进行排版操作,同时存在model绑定的数据显示(强类型数据绑定)。
Controller即控制器,控制器的
作用在于处理逻辑,它对应于model与view,可以说是MVC的中心。
如果要应用广泛,一定要具备以下六个特点:
(1)上手快。
(2)好的技术支持。
(3)整合其他技术能力强。
(4)扩张能力强。
(5)设计结构合理。
(6)运行稳定。
只有具备了上述特点,才能算得上是一个好的框架,才能被程序员认可及应用。
1.4本文工作及安排
第一节介绍了本系统建立的背景与意义,同时概括的介绍了在设计图书管理系统中所要用的技术与框架,以及具体的实现过程,为后面论文的设计起到了一个良好的开头。
为论文总体设计提供了一个思路。
第一章绪论
绪论主要概括了课题研究背景以及研究意义,以及设计的关键技术、运行环境。
第2章需求分析
本章是对图书馆里系统涉及的需求作出了详细的分析,系统的功能及需求分析。
第3章系统设计
本章是对系统所要实现的功能用各种图形表现出来,以及表现出个模块之间的组成以及关系。
同时根据系统的数据库需求分析做出具体设计,以表单的形式展现。
具体设计的表单有:
图书馆信息表、管理员信息表、图书信息表、读者信息表、参数设置表、书架信息表。
第四章系统实现
本章主要讲述了系统设计的目的,以及设计成功后界面的显示,主要分为前台显示界面和后台设置界面,以及提醒弹框界面。
第5章系统测试
本章内容主要通过实际的操作,对信息进行错误的录入和正确的录入来测试系统的功能,通过实例来测试,可以检测自己的系统是否存在问题。
系统的测试是一个很好的方法来验证自己的系统是否正确。
第二章需求分析
2.1用户需求分析
系统共有两类用户,管理员用户和读者用户,两种用户对系统的主要需求如下:
管理员用户:
管理员通过身份认证登陆系统后,进入系统管理图书馆的信息,对图书馆的信息进行操作,对图书馆的信息进行更新,及时对图书的信息进行更新。
具体对图书馆信息,管理员设置,参数设置,书架设置进行管理,以便更好的管理,供读者对图书的查询。
读者用户:
读者进入图书管理系统后,可以对自己所要的书籍的信息进行查阅,同时也可以登录自己的账号,进行查询自己所借阅的图书的信息,同时也可以查看图书借阅情况的排行榜。
进行有选择性的查询借阅。
2.2系统功能分析
2.2.1管理员工作流程
(1)管理员对系统使用的权限:
设置图书馆信息、设置管理员权限、设置参数、设置书架信息。
(2)读者对系统的使用权限:
读者可以对自己所在的图书管理系统和自己的档案进行添加信息,修改最新信息和删除操作。
(3)图书管理功能包括:
图书类型、档案的修改,查询、更新管理。
(4)图书借还功能包括:
用户对图书借阅情况录入、图书归还的时间、图书续借能否进行管理。
(5)管理员可以实现对读者借阅图书情况的查询,对图书档案进行查询信息和提醒快到期的查询。
以及读者对借阅排行榜进行查询和自己借阅情况的查询。
(6)排行榜功能包括:
管理员对读者借阅图书排行进行更新、以及读者借阅排行榜。
(7)口令更改:
管理员可以对系统的登陆口令进行更改设置。
(8)退出系统:
管理员在系统中完成操作后,可以选择退出登录系统,当点击退出登录系统后,系统会弹出一个弹框是否确定退出系统,让管理员可以进行选择操作,减少了因错误点击时带来的麻烦。
2.2.2用户工作流程
(1)图书借阅:
用户通过此功能实现对图书的借阅功能。
借阅功能有一定的限制性条件,管理员通过对读者类型的设置,每种读者类型对图书的借阅数量都有一定的限制,当借阅图书的数量达到上限后,系统将自动弹出窗口提醒借阅者已不能继续借阅。
(2)图书的归还:
用户通过查看图书借阅,来查看自己已经借阅过的书,并且可以查看到哪些书已经归还,哪些书自己还未归还,同时也可以通过此功能查看借阅日期和应当归还的日期,可以让自己对自己的借阅情况有一定的了解,也可以提醒自己按时归还图书。
(3)排行榜:
管理员可以查看图书借阅的最新情况进行了解读者对于哪种书更喜欢阅读,读者也可以通过排行榜对受欢迎的书进行查询了解图书馆内那种书更加受欢迎,通过排行榜读者也可以从中选择受欢迎的图书进行来进行借阅了解当下受欢迎图书的具体内容。
(4)系统查询:
读者可以在系统内对图书的档案进行查询,和借阅图书的查询。
查询图书的档案,可以通过查询图书的书名,条形码,书架,类别,出版社,作者来对图书的信息进行查询。
用户通过查询自己所留的信息条形码,身份信息,以及借阅的图书信息:
条形码、书名、作者来查询,也可以根据图书馆设定的借阅时限进行查询。
(5)口令更改:
读者进入系统后可以自行对自己图书管理系统的登陆密码进行设置,以便自己容易记住登陆密码。
(6)退出系统:
用户操作完成后可以选择退出系统,用来避免其他用户对自己的登陆密码进行更改,减少不必要的麻烦。
2.3本章小结
本章内容主要是对系统的功能进行分析,主要介绍了本系统具体实现的功能,用户登录后,因为系统设置了管理员和读者两类用户,用户以不同的身份登入系统后,对系统有不同的使用权限。
用户以系统管理员的身份登录时,可以对系统其他用户的使用权限进行设置,以及对图书馆信息,书架信息,图书信息,读者信息,读者借阅归还,图书的借阅排行榜等功能进行设置,读者可以登陆系统后对自己的借阅图书信息进行查询,同时也可以查看自己对借阅图书的归还情况和自己的登陆密码进行管理,具体功能实现的流程。
第三章系统设计
3.1系统功能结构图
根据前面的需求分析,可以得到如下系统的整体设计图,如图3.1所示。
图3.1系统功能结构图
3.2数据库设计
数据库是本系统设计的核心内容,因为数据库存储了系统所需的所有数据,数据库将系统所需的数据先存储好,等待前台开发设计后连接数据库,从数据库中读取信息,进行调用,最后通过运行后显示出界面。
数据库经过20多年的发展,由于其优越性的安全性、完整性、稳定性和支持多种操作系统、多种硬件平台的特点,得到了广泛的应用[10]。
本系统所要设计的数据库主要存储用户及图书的信息,包括管理员,读者的信息,图书的信息,书架的信息。
建立一个好的数据库可以使自己的系统操作起来更加简单,容易查询,可以使操作更加便捷,便于对系统的管理。
以下是对数据库的具体设计:
(1)数据库名称:
db_library
(2)数据库表结构:
数据库表的组成结构:
表的名称,表中数据的类型,以及字段长度,数据是否为空等信息进行了详细的描述。
具体描述如下所示:
本系统的数据库中各个表的设计如下面表格所示。
每个表格对应数据库中的一个表。
(1)图书馆信息表(图书馆信息ID,馆名,馆长,联系电话,联系地址,联系邮箱,网址,建馆日期,简介)
(2)管理员信息表(管理员ID,管理员姓名,密码)
(3)权限表(管理员ID号,系统设置,读者管理,图书管理,图书借还,系统查询)
(4)参数设置表(参数ID,办证费,有效日期)
(5)图书类型表(图书类型ID,类型名称,可借天数)
(6)书架信息表(书架ID,名称)
(7)图书信息表(图书信息ID,条形码,书名,图书类型,作者,译者,出版社,价格,页码,书架,库存总量,录入时间,操作员,是否删除)
(8)图书借阅信息表(图书借阅信息ID+读者编号,图书编号,借书时间,应还时间,操作员,是否归还)
(9)图书归还信息表(图书归还信息ID,读者编号,图书编号,归还时间,操作员)
(10)出版社信息表(ISBN号,出版社名称)
(11)读者信息表(ID,姓名,性别,条形码,专业,出生日期,有效证件,证件号码,电话,电子邮件,登记日期,操作员,备注,类型)
(12)读者类型信息表(读者类型ID,名称,可借数量)
3.2.1系统E-R图
E-R图转换成关系模型的主要解决的问题是如何将实体和实体间的联系转换为关系模式,如何确定这些关系模式的属性和码。
一组关系模式的集合的是关系模型的逻辑结构。
E-R由三个部分组成:
实体、实体的属性和实体之间的联系三个要素所组成的。
本设计系统的E-R图如下图3.2所示。
图3.2系统E-R图
3.2.2数据库表结构
(1)图书馆信息如表表3.1所示。
表3.1tb_library图书馆信息表
列名
数据类型
长度
是否为空
ID
Int
10
libraryname
varchar
50
Yes
curator
tel
20
adress
100
email
url
createDate
Date
introduce
Text
(2)管理员信息如表3.2所示。
表3.2tb_manager管理员信息表
name
30
pwd
(3)参数设置如表3.3所示。
表3.3tb_purview参数设置表
sysset
tinyint
1
readerset
bookset
borrowback
sysquery
(4)参数设置如表3.4所示。
表3.4tb_parameter参数设置表
cost
validity
(5)图书类型如表3.5所示。
表3.5tb_booktype图书类型表
typename
days
Int
(6)图书信息如表3.6所示。
表3.6tb_bookinfo图书信息表
barcode
bookname
varchar
70
typeid
author
translator
ISBN
price
Float(8,2)
page
bookcase
storage
inTime
operator
del
score
heat
(7)图书借阅如表3.7所示。
表3.7tb_borrow图书借阅信息表
readid
int
bookid
borrowTime
date
backTime