西安文理学院图书馆书籍管理功能设计实现_第1页
西安文理学院图书馆书籍管理功能设计实现_第2页
西安文理学院图书馆书籍管理功能设计实现_第3页
西安文理学院图书馆书籍管理功能设计实现_第4页
西安文理学院图书馆书籍管理功能设计实现_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

西安文理学院图书馆书籍管理功能设计实现摘要随着社会的进步以及计算机的蓬勃发展,越来越多的高校图书馆或者社会图书馆慢慢的都开始选择建立自己的图书馆管理系统,以用来提高图书馆管理员的工作效率,同时也能够提升图书馆馆藏图书的管理力度。随着图书馆越来越多、越来越大,藏书不断增加,管理人员也将增加工作量,读者也会相应地增加图书寻找的时间。不仅节约了大量的人力物力,使管理者的工作效率更加快捷完善,并且使读者更快更准更便捷的找到图书所在的地方。这不仅仅使我国进入信息管理化时代更加完善,也使人们对信息管理化更加了解,使越来越多的管理者与管理机构增加更大的管理系统需求。通过对学校的书籍管理运营机制调查研究后我发现,图书管有一个重要的组成部分便是图书书籍管理借阅系统,于是便对此进行设计和开发此功能。图书书籍管理功能系统解决了对书籍的手工编码分类,采用电脑端的系统将图书的相关编码记录在数据库中,便于后期的管理和维护,同时方便借阅的同学查询图书所在的类别室,便于快速定位所要借阅的书籍的位置。图书的新增功能、图书的数量记录功能(包含数量的增减)、图书的分类管理等功能是图书管理系统功能的重要部分。书籍管理系统的设计与开发主要包括前端开发的操作功能界面和后台数据库的存储,是典型的信息管理系统。此系统采用HTML以及JavaScript进行前端页面的开发和设计,通过MySQL数据库以及数据库语言进行前端页面的交互和后台数据的交互,通过PHP技术链接前端和后台数据的交互请求。本次的图书管理功能研究和模拟实现,目的是对学校的图书信息进行全面的规划与管理,提升学校的图书馆管理功能的完整性和实现量化管理的能力。关键词:图书管理功能、HTML技术、Javascript技术、数据存储、信息管理 论文类型:系统开发目录10422摘要 III2448目录 140381绪论 128221.1研究背景与意义 159021.2国内外研究现状 1172341.2.1国内发展现状 1123861.2.2国外发展现状 2109562相关技术原理 3289712.1开发工具 3199462.2相关技术 3302192.2.1静态页面开发语言HTML 363292.2.2Javascript动态交互语言 474062.2.3PHP后台请求交互技术 4213172.2.4MySQL数据库存储技术 541763系统分析 6323033.1需求分析 6138203.2功能分析 6309783.3功能结构流程 7257564系统设计 8266204.1总体设计 878744.2详细设计 9157264.2.1用户登录 9182704.2.2管理员功能模块 9109824.2.3图书管理功能模块 1088874.2.4图书数量控制模块 1083714.2.5图书类别管理模块 10205824.2.6图书查询功能模块 11303434.2.7数据库设计 1135534.2.8系统功能菜单栏和工具栏设计 13282365系统实现 15201145.1页面代码设计 1526525.2工具栏功能设计 15239635.3数据库增删改查操作设计 16150365.4页面和后台数据交互设计 1678515.2主要功能代码 17166646系统测试 25283096.1测试方法 25270086.2测试用例 25270186.3测试结果 33261747结论 3419484致谢 3520290参考文献 36西安交通大学网络教育学院论文PAGE3PAGE3绪论1.1研究背景与意义图书馆书籍管理功能能够有效的对馆内的书籍进行登记、备份、管理,从而达到高度的系统化的管理功效,能够使在校学生快速有效的进行相关图书的查询和查阅,快速定位图书所在的位置和所属的学科类别。同时提升管理员对于图书的管理效率和管理力度,替代了人工管理的复杂度,提高管理者的工作效率以及图书本身安全性的控制。作为一个好的图书管理系统功能,需要具备快速的录入和批量录入的功能,同时支持图书条形码的扫描以及图书编码能力,而且需要拥有一个方便操作的功能界面,才能满足该校的图书馆的日常管理功能,比如图书的录入和备份以及图书借阅的相关库存管理功能,对图书馆的图书进行分类,数量记录等,为用户提供快捷方便的操作体验,这样不仅能够减轻工作人员的工作量,而且能够提高其工作效率。这样的话呢,图书管理功能便能够发挥它的重要作用,不仅能给读者方便读者在线查阅信息,查询图书所对应的位置,还能够在线提供最新、最全的资料,使图书馆的资源能够得到充分的利用与管理,并且能在最短的时间内向读者传达最有效的信息。图书管理功能能够让图书馆的相关工作人员从图书录入到最终的日常管理都能实现在线管理,从而解决了以往人工管理的高成本问题,减少管理人员的数量,但提升了管理的力度和效率,由于图书馆管理的总目标是:整洁有序,藏书完整,检索便利,利用率高。1.2国内外研究现状1.2.1国内发展现状随着社会发展,生活水平相对慢慢提高了之后,对于学生的教育也会越来越高,之后在中小型学校建立图书馆也会成为每个学校的标准。所以在这个时候呢,就需要建立一个图书馆的书籍管理系统,毕竟学校有大有小,一个能够满足基本管理的图书馆系统也是很需要的。这个书籍系统可以有效的提高很多便利,不仅可以节约人力还可以节约时间,更有效的为一些较小的学校节约了成本,而且在管理书籍的时候让我们可以更快地从计算机中得知书籍的准确位置。减少了一些人为管理的缺陷。现如今,有很多的图书馆和学校都还没有使用计算机来进行信息管理。图书馆若采取手工方式对图书和书籍借阅情况进行人工管理,由于资料多,手工处理工作量大,效率低下,也不方便读者对图书资料的查阅。为提高书籍管理效率,国内的相关大学和技术学校等的图书馆中均已采用图书管理系统进行图书馆的图书的管理和相关服务功能。1.2.2国外发展现状MARC标准是由Henriette Davidson Avram为美国国会图书馆开发的一套图书馆的管理系统,可使用计算机对书籍编目,对借阅情况进行记录和查询。1971年,MARC标准成为美国和国际标准化组织的书目数据库标准,书籍数据库除了能对图书馆的书籍进行编目外,并且对公开发表的文献,包括期刊和报纸文章、会议程序、报告、政府和法律出版物、专利、书籍等进行检索。在图书馆书籍数据库中,有很大比例的书籍记录了文章、会议论文,但都不是完整的专著,通常是以关键字、主体分类术语或文摘的方式提供检索服务。上个世纪70-80年代,计算机存储能力得到了很大提高,而且通讯领域技术快速发展,出现了图书馆集成系统(ILS)。这种系统包括必要的硬件和软件,允许对大型循环任务的链接,包括有循环控制及逾期通知。发达国家图书馆的工作可以通过ILS完成包括书籍购置、编目、标题、预订和期刊文献检索的工作。虽然早在上个世纪60年代就出现了ILS实验系统,直到1975年,俄亥俄州立大学才开发出第一个大型的在线ILS产品,用在线目录系统取代了卡片目录,并在1978年用于达拉斯公共图书馆。在80年代,ILS的数量和使用功能得到了大幅度增长,在线使用更为完善[6]。国外的相关大学和一些公共的图书馆几乎都采用了书籍管理系统来替代人工管理,从而提升图书管理的效率和降低相应的人工成本。相关技术原理2.1开发工具开发环境:Windows系统开发工具:VisualStudioCode开发技术框架:jQuery+HTML+CSS+PHP+MySQLTomcat:Tomcat是一个启动webserve服务的工具,是前台页面与后台数据库服务链接的桥梁,Tomcat服务器其实就是Apache服务器的扩展服务,但是却是独立运行的,支持JSP程序调试,同时也支持前端HTML页面和后台MySQL服务器间的数据通信服务,通过Tomcat服务器可以本地搭建一个服务系统,以实现前后台数据互通,从而达到数据存取的操作,也可以本地模拟环境上的接口请求以及响应速率。2.2相关技术2.2.1静态页面开发语言HTML(1)技术原理HTML超文本标记语言,作为前端页面开发的核心语言,其结构和语法相对简单易学,主要由一些特定的标签组成,通过这些标签可以将HTML文档和Internet链接起来,使得HTML文档可被浏览器解析,从而显示出需要的页面效果,HTML可以处理文字、图片、动画、声音和视频等,主要用于静态页面的开发,一般页面的静态效果都由HTML和CSS结合开发呈现,其主要的核心如图2-1所示:图2-1HTML页面代码架构(2)技术特点HTML的特点有:简易性、可扩展性、平台无关性。简易性的特点是版本升级采用超集方式,从而更加灵活方便;可扩展性的特点是语言的广泛应用带来了加强功能,增加标识符等,采取子类元素的方式,对系统扩展有所保障;平台无关性的特点是除使用PC外,也可在其他平台广泛使用。2.2.2Javascript动态交互语言(1)技术原理JavaScript(简称'JS'),作为前端页面的交互功能的开发语言,可以设计页面的相关的交互操作的行为事件,如鼠标点击事件、键盘按下事件、鼠标移动事件等,目的是提高页面的交互功能的完善,实现页面的可操作性。JavaScript的衍生技术jQuery是JavaScript的简易版,jQuery简化了JavaScript原生语法书写的复杂度,提高了开发的效率。JavaScript多采用命令式和声明式的语法,通过面向对象的设计思想,实现页面元素的对象化,提高页面的交互效果。(2)技术特点JavaScript(简称'JS')的特点有:解释性执行、基于对象、简单弱类型、相对安全、事件驱动、跨平台性[2]。解释性执行语言提供了非常方便的开发过程,并且与HTML结合在一起,从而使用户方便操作;基于对象也就是面向对象的语言,也就是说JS可以使用已经创建的对象,许多功能可以用于脚本环境中对象方法与脚本的相互作用;简单性是说此语言容易上手,并且变量类型采用了弱类型,并未使用严格的数据类型;相对安全是说相对于安全,不被允许访问本地磁盘,不能将数据存服务器,不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览,能够有效防止数据丢失或非法访问;事件驱动是说以事件响应的方式,在页面中执行某种事件的响应;跨平台性是说JS依赖浏览器,只要计算机能够运行浏览器,便可实现编码。2.2.3PHP后台请求交互技术(1)技术原理PHP(外文名:PHP:HypertextPreprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言,语法与C语言、Java等后台语法类似,通过PHP语言可以建立起前端JavaScript需要和后台MySQL数据库服务的连接,从而达到通信的效果,多用于小型的功能较简单的Web服务系统。(2)技术特点PHP的特点有:成本低、易用性、跨平台兼容性、稳定性、易上手性、广阔的数据库连接、可伸缩性、HTML嵌入式开发。2.2.4MySQL数据库存储技术(1)技术原理MySQL作为后台数据存储的数据库语言技术,它简单,易学,容易上手,由MySQLAB公司开发的,隶属于Oracle旗下产品,该技术为开源的关系型服务器,能够有效的解决后台数据间的关系表的建立,同时对于数据的存取操作方便快捷,已被广泛应用到Web服务系统开发当中,能够结合PHP语言执行数据库的存取操作。PHPMySQL函数格式如下: <html><head></head><body><?php$retval=mysql_function(value,[value,...]);if(!$retval){die("Error:arelatederrormessage");}//OtherwiseMySQLorPHPStatements?></body></html>(2)技术特点MySQL的特点有:功能强大、支持跨平台、运行速度快、支持面向对象、安全性高、成本低、支持各种开发语言、数据库存储容量大、支持强大的内置函数[5]。系统分析3.1需求分析图书书籍管理系统主要面向于图书馆中的图书信息统一化管理问题,包括图书编号、图书名称、图书类型、图书作者、图书出版年份、图书价格等信息,同时也面向图书管理员,包括管理员的编号、姓名及管理员登录密码等相关权限信息。3.2功能分析功能分析图如图3-1所示:图3-1功能模块划分图图书管理功能主要分为以下几个模块:1、书籍管理员登陆模块2、图书书籍分类记录模块3、同一图书数量记录模块4、图书与书架分类关联模块5、书籍添加、删除及修改模块3.3功能结构流程图书管理功能主要流程如下:新的书籍到来时,管理员登录到功能页面中,对新书籍进行新增的操作,在新增的信息中登记书籍的名称、作者、出版年份等信息,然后将其与图书馆的书架的分类进行相关联,记录到系统中,最后再根据楼层及书籍类别所在的书室将其位置记录在对应的书籍信息后,然后点击保存按钮,将对应的新增的书籍的所有信息保存在数据库中;当修改书籍的信息时,管理员登录后,选择需要修改的书籍,点击修改书籍的按钮,对图书的相关信息进行修改,修改好之后点击保存按钮,将修改后的图书书籍保存在数据库中,覆盖之前的图书书籍的信息;当点击删除书籍后,将选中的书籍的相关信息从数据库中直接删除掉。具体流程如图3-2所示:图3-2图书管理功能流程图系统设计4.1总体设计图书管理功能主要流程如下:新的书籍到来时,管理员登录到功能页面中,对新书籍进行新增的操作,在新增的信息中登记书籍的名称、作者、出版年份等信息,然后将其与图书馆的书架的分类进行相关联,记录到系统中,最后再根据楼层及书籍类别所在的书室将其位置记录在对应的书籍信息后,然后点击保存后将对应的新增的书籍的所有信息保存在数据库中;当修改书籍的信息时,管理员登录后,选择需要修改的书籍,点击修改按钮,对书籍的相关信息进行修改,之后,再后点击保存按钮,将修改后的书籍保存在数据库中,覆盖掉之前的书籍的信息;当点击删除书籍后,将选中的书籍的相关信息从数据库中直接删除掉。具体流程如图4-1所示:图4-1图书管理功能流程图4.2详细设计4.2.1用户登录用户登录的模块主要是为了控制系统功能使用的权限控制,在使用系统功能前需要先通过登录界面登录到系统中,才能使用,否则无法使用该系统。确保系统的安全性和可控性。输入用户名密码后才能进入系统功能页面,登录页面如图4-1所示:图4-1用户登录界面默认的用户名为admin,密码为admin,用户登录进去之后可以进行密码的修改。4.2.2管理员功能模块管理员模块是为了控制系统功能使用的人数而设置的模块,初始化的时候管理员只有一个,且为高级管理员,可以为其他的人添加用户账号,给其他人添加相应的操作权限。高级管理员登录之后,会有用户添加功能,点击相应的功能按钮后可以添加用户来使用该系统,在添加区域输入用户名和密码后,配置相应的功能权限后点击保存按钮,添加的用户可用该用户名和密码登录到系统中。管理员设置如图4-2所示:图4-2管理员设置界面4.2.3图书管理功能模块图书管理模块主要集合了图书的新增功能、图书的修改功能和图书的删除功能板块,在此模块窗口下,用户可以根据书馆书籍情况,对书籍的数据库进行书籍录入的功能,通过添加、修改、删除等功能来实现,使用户可以更加方便快捷的进行图书录入工作。4.2.4图书数量控制模块在学生借阅图书后或者在书籍删除时或者在书籍数量变化的时候,都可调用该功能模块对书籍的数量进行修改,修改后点击保存按钮,将修改后的数量存储到数据库中对应的书籍的信息中。4.2.5图书类别管理模块该模块是为图书分类提供辅助选项功能,在该模块中通过添加书籍的类别和类别编码,存储到数据库中之后,在新增书籍或者修改书籍时,选择书籍类别的时候可以选择提前设置的类别选项,从而提高书籍录入的效率。4.2.6图书查询功能模块点查询,弹出图书信息查询窗体,如下图所示,可以选择选择查询条件,然后在文本框中输入关键词语,点击执行查询,查询结果就可以显示在图书资料管理窗体的表格内。查询页面如图4-3所示:图4-3书籍查询界面4.2.7数据库设计1)数据库整体需求设计综合分析,本次研究的功能涉及到的数据库的操作为图书入库出库操作,图书数量更改操作,图书信息修改操作等,因而数据库中应包含如下信息:(1)书籍信息(书籍名称、书籍ISBN编码、书籍出版社信息、书籍出版年份、书籍类型等)(2)书籍类型数据信息(书籍类型名称、书籍类型编码等)(3)书架信息(书架位置、书架类别、书架编号等)(4)系统管理员信息(管理员姓名、编号、相关操作权限等)2)数据库中的数据表设计(1)图书信息管理表图书信息管理表主要是存储图书的相关信息的表格,其中包含书籍名称、书籍ISBN编码、书籍出版社信息、书籍出版年份、书籍类型等。图书管理信息表的表结构如表4-1所示:表4-1图书信息表tb_book字段名称字段含义数据类型数据长度是否允许为空keyNum书籍编码varchar30否book_name书籍名称varchar100否author书籍作者varchar30是ISBN书籍条形码varchar20否price书籍价格float10否book_case书籍所在书架varchar20否press出版社varchar100否inDate入库时间date否(2)图书类型表图书类型表的设计主要是为了方便对书籍的分类和查询,在实际应用中图书管理员就是根据书籍类型的不同将其分列在不同的书架,以便读者的寻找与借阅,其中可借阅天数项设置了不同类型图书的借阅期限的,可以根据书籍的具体情况进行不同的维护管理,表的具体结构设计如表4-2所示:表4-2图书类型表tb_booktype字段名称字段含义数据类型字段长度是否为空Id书籍类型编码int10否book_type书籍类型varchar30否days可借阅天数int10否(3)管理员信息表管理员信息表主要是为了存储管理员信息所设置的表格,表格中存有管理员所对应的管理员信息(管理员编号、用户名、登陆密码等)和管理员的权限信息。该表的具体结构如表4-3所示:表4-3管理员信息表字段名称字段含义数据类型字段长度是否为空Id管理员编号int10否user_name管理员名称varchar30否pass_word登录密码varchar20否isHign是否为高级管理员vachar10否4.2.8系统功能菜单栏和工具栏设计1)菜单栏功能(1)系统管理功能,包括以下功能:1、管理员的功能:主要是为了实现用户的添加、修改和删除;2、罚金的功能:主要是为了实现每日超期罚款金额;3、切换用户的功能:主要是为了实现切换不同用户的登录;4、离开挂起的功能:当用户有事暂时离开时,锁定和解除锁定系统;5、退出系统的功能:退出该系统。(2)图书设置功能,包括以下功能:1、图书类型的功能:主要是为了管理员给图书分类而设置的功能;2、图书出版社的功能:主要是为了管理员方便输入图书信息而设置的功能;3、存放位置的功能:主要是为了管理员给书架分组而设置的功能。(3)图书管理功能,包括以下功能:1、图书资料的功能:主要实现图书信息的查询、新书入库、图书修改删除;2、借阅图书的功能:主要是为了实现图书的借阅管理;3、续借图书的功能:主要是为了实现图书的续借管理;4、归还图书的功能:主要是为了实现图书的归还管理;5、挂失图书的功能:主要是为了实现图书的挂失管理。(4)系统查询菜单功能,包括以下功能:1、图书信息的查询功能:此查询功能支持图书信息的模糊和精确查询,可以查询图书的各种信息。2、借阅图书信息的查询功能:此查询支持借阅图书信息的模糊和精确查询,使读者更方便地查询到已借阅图书的各种信息。2)工具栏功能(1)注销用户:可以注销当前登录用户;(2)读者资料的维护:功能与上述菜单栏中的读者信息功能相同;(3)读者的挂失、解除挂失与到期续证:可为不慎丢失借书证件的读者办理挂失,当证件找回时可解除挂失以及为已到期读者办理续证;(4)图书资料:主要是为了办理图书的入库、修改和出库;(5)借阅记录:主要是显示图书的借阅信息;(6)借阅图书的管理:功能与上述菜单栏中的借阅图书功能相同;(7)续借图书:功能与上述菜单栏中的续借图书功能相同;(8)归还图书:功能与上述菜单栏中的归还图书功能相同;(9)挂失图书:功能与上述菜单栏中的挂失图书功能相同;(10)浏览书目:主要是为了浏览图书的相信息;(11)检索书目:主要是为了查询图书的相关信息;(12)系统帮助:主要是为了查看关于本系统的帮助文件。系统实现5.1页面代码设计该系统的所有操作页面均采用HTML+CSS相结合的技术开发设计可视化的操作页面效果,其页面构成代码如下所示:<html><head><metacontent="text/html;charset=gb2312"/><title>书目</title></head><body><palign="center"class="Title">图书管理平台</p><a>用户登录</a><a>管理员设置</a><a>图书馆里</a><a>图书查询</a><a>系统帮助</a></body></html>5.2工具栏功能设计工具栏的相关功能均通过jQuery的事件绑定函数onclick进行绑定,在对应的功能元素上绑定onclick事件或者通过$(“a”).on(“click”,function(){})的方式进行绑定。在绑定的点击事件函数内通过jQuery进行相应的功能操作,若涉及到与后台数据交互时,可用ajax发送相应的请求到后台数据库读取数据,ajax发送请求方式如下:$.ajax({ url:”/getData”, data:{name:“”,Id:“”}, contentType:“”, success:function(data){}, error:function(message){}})5.3数据库增删改查操作设计数据库的增删改查的操作都可以通过MySQL的查询、插入和删除语句来进行相应的操作,具体的语句功能如下:(1)查询:SELECTcolumn_name,column_nameFROMtable_name(2)增加:INSERTINTOtable_name(field1,field2,...fieldN)VALUES(value1,value2,...valueN);(3)修改:UPDATEtb_courses_new->SETcourse_name='DB',course_grade=3.5->WHEREcourse_id=2;(4)删除:DELETEFROMtable_name[WHEREClause]5.4页面和后台数据交互设计页面和后台数据交互主要通过PHP来实现,通过PHP将MySQL相应的操作语句执行,以此来从数据库中获取需要的数据或者更新数据库的相关操作,其具体的实现方式如下:<?php$servername="localhost";$username="username";$password="password";$dbname="myDB";//创建连接$conn=newmysqli($servername,$username,$password,$dbname);//检测连接if($conn->connect_error){die("连接失败:".$conn->connect_error);}//使用sql创建数据表$sql="CREATETABLEMyGuests(idINT(6)UNSIGNEDAUTO_INCREMENTPRIMARYKEY,firstnameVARCHAR(30)NOTNULL,lastnameVARCHAR(30)NOTNULL,emailVARCHAR(50),reg_dateTIMESTAMP)";if($conn->query($sql)===TRUE){echo"TableMyGuestscreatedsuccessfully";}else{echo"创建数据表错误:".$conn->error;}$conn->close();?>5.5主要功能代码<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title></title><style>.mbody{width:98%;height:96%;margin:0auto;border:2pxsolidgray;border-radius:15px;box-shadow:10px10px5px#888888;position:absolute;background-image:url("img/bg.png");background-repeat:no-repeat;background-size:cover;}input{width:80px;height:35px;background:#c90c18;color:#ffffff;border-radius:5px;border:2pxsolid#db5e66;font-size:16px;cursor:pointer;transition:0.3s;}input:hover{background-color:#02bbff;border:1pxsolidorange;transform:scale(1.08);}</style></head><body><divclass="mbody"id="mbody"></div></body><script>varuserArray=newArray(3);varbookArray=newArray(15);varisRegist=false;varisLogin=false;varmbody=document.getElementById("mbody");userArray[0]=newObject();userArray[0].userName="Admin";userArray[0].password="Admin";userArray[0].isAdmin=true;userArray[1]=newObject();userArray[1].userName="user";userArray[1].password="user";userArray[1].isAdmin=false;userArray[2]=newObject();userArray[2].userName="TY";userArray[2].password="TY";userArray[2].isAdmin=true;for(vari=0;i<bookArray.length;i++){bookArray[i]=newObject();bookArray[i].bookId=i+1001;bookArray[i].bookName="书"+bookArray[i].bookId;bookArray[i].bookAuthor="TY";bookArray[i].bookTime="2017-7-29";bookArray[i].bookNum=2;}bookArray[14].bookName="鬼吹灯";bookArray[14].bookAuthor="天下霸唱";bookArray[14].bookTime="2008-7-1";bookArray[14].bookNum=3;functioncreatTable(isAdmin){varstr;vartStr="";varadminStr="<inputtype='button'value='录入新书'οnclick='adminAdd()'"+"style='border:2pxsolidred;font-size:18px;cursor:pointer;"+"color:white;background-color:hotpink;display:block;margin:0auto;"+"margin-top:60px;height:40px;width:100px;'>";if(isAdmin){tStr+="<th>借书</th>"+"<th>录入</th>"+"<th>删除</th>"+"</tr>";tStr+=adminStr;}else{tStr+="<th>借书</th>"+"</tr>";}for(vari=0;i<bookArray.length;i++){if(isAdmin){tStr+="<trheight='35'align='center'>"+"<td>"+bookArray[i].bookId+"</td>"+"<td>"+bookArray[i].bookName+"</td>"+"<td>"+bookArray[i].bookAuthor+"</td>"+"<td>"+bookArray[i].bookTime+"</td>"+"<td>"+bookArray[i].bookNum+"</td>"+"<td><inputtype='button'value='借书' οnclick='borrow("+i+","+isAdmin+")'/>"+"</td>"+"<td><inputtype='button'value='录入' οnclick='add(\""+i+"\")'/>"+"</td>"+"<td><inputtype='button'value='删除' οnclick='del(\""+i+"\")'/>"+"</td>"+"</tr>"}else{tStr+="<trheight='35'align='center'>"+"<td>"+bookArray[i].bookId+"</td>"+"<td>"+bookArray[i].bookName+"</td>"+"<td>"+bookArray[i].bookAuthor+"</td>"+"<td>"+bookArray[i].bookTime+"</td>"+"<td>"+bookArray[i].bookNum+"</td>"+"<td><inputtype='button'value='借书' οnclick='borrow("+i+","+isAdmin+")'/>"+"</td>"+"</tr>"}}str="<tableborder='0px'width='100%'style='margin:30pxauto'>"+"<trheight='45'>"+"<th>编号</th>"+"<th>书名</th>"+"<th>作者</th>"+"<th>发布日期</th>"+"<th>库存数量</th>"+tStr+"</table>";returnstr;}functionborrow(i,isAdmin){if(bookArray[i].bookNum<1){alert("借书失败!库存不足。")}else{bookArray[i].bookNum--;}mbody.innerHTML=creatTable(isAdmin);}functionadd(i){bookArray[i].bookNum++;mbody.innerHTML=creatTable(true);}functionadminAdd(){varisExist=false;varj;varnum=prompt("请输入要录入的书本种类数:")-0||0;for(vari=0;i<num;i++){varbook=newObject();book.bookId=prompt("请输入第"+(i+1)+"种书的编号:")-0||-1;if(book.bookId==-1){alert("第"+(i+1)+"种书的编号格式不正确,请重新输入!");i--;continue;}book.bookName=prompt("请输入第"+(i+1)+"种书的书名:")||"无名书";book.bookAuthor=prompt("请输入第"+(i+1)+"种书的作者:")||"无名氏";book.bookTime=prompt("请输入第"+(i+1)+"种书的发布时间:")||"1970-1-1";book.bookNum=prompt("请输入第"+(i+1)+"种书的数量:")-0||1;for(j=0;j<bookArray.length;j++){if(bookArray[j].bookId==book.bookId){isExist=true;break;}}if(!isExist){bookArray.push(book);}else{bookArray.splice(j,1,book);}mbody.innerHTML=creatTable(true);}}functiondel(i){bookArray.splice(i,1);mbody.innerHTML=creatTable(true);}functionregAlog(isregist,islogin){if(isregist){varregist=newObject();varrname=prompt("请输入用户名:");for(varrg=0;rg<userArray.length;rg++){if(userArray[rg].userName==rname){rname=prompt("该用户已存在!:");rg=-1;}}regist.userName=rname;regist.password=prompt("请输入密码:");regist.isAdmin=confirm("是否需要管理员权限?");userArray.push(regist);alert("注册成功!");islogin=true;if(islogin){mbody.innerHTML=creatTable(regist.isAdmin);}}else{varlname=prompt("请输入用户名:");varj=0;vark=0;varlg;for(lg=0;lg<userArray.length;lg++){if(userArray[lg].userName==lname){varpassw=prompt("请输入密码:");if(passw==userArray[lg].password){alert("登陆成功!");islogin=true;break;}else{for(k=0;k<2&&passw!=userArray[lg].password;k++){passw=prompt("密码错误!请重新输入密码:");}if(k>=2){alert("超过次数,请重新登陆!");break;}elseif(passw==userArray[lg].password){alert("登陆成功!");islogin=true;break;}}}elseif(lg==userArray.length-1){lname=prompt("用户名错误,请重新输入:");lg=-1;if(j++>3){alert("超过次数,请重新登陆!");break;}}}if(islogin){mbody.innerHTML=creatTable(userArray[lg].isAdmin);}}}isRegist=window.confirm("请选择是否注册");regAlog(isRegist,isLogin);console.log(userArray);</script></html>系统测试6.1测试方法一个良好的系统少不了测试的环节,测试可以帮助更有效的发现问题和解决问题,而测试方法决定着测试的结果是否具有高质量性。本次系统的测试方式为模拟测试,通过Tomcat启动本地Web服务,然后打开系统操作页面,首先登录事先注册好的用户名密码,然后在图书管理页面中点击新增按钮,在弹出的输入框中输入相关的图书信息后点击保存按钮,然后查看数据库中的图书管理信息表,若信息插入正常则证明该功能已打通,其余功能测试方法参照此方法进行。通过完整的功能性的测试,即可了解当前系统的问题所在,同时也能检查单独的功能是否异常,将异常的问题点记录下来,方便后续检查定位分析。6.2测试用例(1)兼容性测试用例配置说明操作系统系统软件外设应用软件结果浏览器IE4+图书馆系统通过Firefox图书馆系统通过GoogleChrome图书馆系统通过Safari图书馆系统通过Opera图书馆系统通过(2)疲劳度测试用例前提条件:连续运行8小时,设置添加10用户并发测试需求输入/动作输出/响应是否正常运行登录功能2小时2小时是4小时4小时是6小时6小时是8小时8小时是退出功能2小时2小时是4小时4小时是6小时6小时是8小时8小时是(3)功能测试用例用例标识GGJS_02项目名称西安文理学院图书馆书籍管理功能设计实现开发人员袁鑫模块名称GGJS用例作者袁鑫参考信息工作考核系统测试人员袁鑫测试日期2020.2.20编号权限测试项测试类别描述/输入/操作期望结果真实结果备注00001登录页面用户名框登录测试输入用户名成功成功00002密码框输入密码成功成功00003登录按钮点击按钮跳转成功成功00004忘记密码按钮成功成功00005注册按钮成功成功00006管理员权限管理员页面管理员信息弹出框页是否可以正常使用弹出框页正确能正常使用成功成功00007输入特殊字符~!@$%^&*()_+=-[]{}\;’,./”?《》<>或特殊字符组合提示输入错误给出处理成功成功00008手动输入正确用户名是否可以查询手动输入用户名可以查询成功成功手动输入非正确用户名是否可以查询手动输入非正确用户名查询无结果并给出提示成功成功00009清空用户名是否可以提交清空用户名查询出现所有管理者信息成功成功00010弹出框页增/删/改管理员信息手动输入正确管理员编号手动输入正确管理员编号进行增/删/改成功成功手动输入非正确管理员编号提示输入错误给出处理成功成功手动输入正确管理员姓名手动输入正确管理员姓名进行增/删/改成功成功手动输入非正确管理员姓名提示输入错误给出处理成功成功手动输入正确管理员密码手动输入正确管理员密码进行增/删/改成功成功手动输入非正确管理员密码提示输入错误给出处理成功成功手动输入正确管理员联系电话手动输入正确管理员联系电话进行增/删/改成功成功手动输入非正确管理员联系电话提示输入错误给出处理成功成功手动输入正确管理员联系地址手动输入正确管理员联系地址进行增/删/改成功成功手动输入非正确管理员联系地址提示输入错误给出处理成功成功手动选择管理员权限级别手动选择管理员权限级别成功成功手动勾选管理员权限手动勾选管理员权限成功成功00011增加按钮增加按钮能否正常使用能正常使用成功成功能否连续点击,连续点击是否对此增加信息提交多次连续点击只增加一条数据,而不添加多条相同数据成功成功增加成功是否有给出提示增加成功给出增加成功的提示成功成功增加成功后,页面跳转到何处转到管理员数据列表页(保存最近一次的状态页面)成功成功00012修改按钮修改按钮能否正常使用能正常使用成功成功能否连续点击,连续点击是否对此修改信息提交多次连续点击只修改数据,而不添加数据成功成功修改成功是否有给出提示修改成功给出修改成功的提示成功成功修改成功后,页面跳转到何处转到管理员数据列表页(保存最近一次的状态页面)成功成功00013删除按钮删除按钮能否正常使用能正常使用成功成功能否连续点击,连续点击是否对此删除信息提交多次连续点击只一条删除数据,而不重复添加数据成功成功删除成功是否有给出提示删除成功给出删除成功的提示成功成功删除成功后,页面跳转到何处转到管理员数据列表页(保存最近一次的状态页面)成功成功00014取消按钮取消按钮能否正常使用能正常使用成功成功点击取消按钮是只清空所填数据还是返回上一页返回上一页图书数据列表页成功成功能否快速连续点击,是什么结果返回上一页图书据列表页成功成功00015图书信息分页控件点击“首页、上一页、下一页、尾页”能正确分页、翻页成功成功页面跳转按钮能选择页数和正确跳转成功成功对数据增/删/改后是否正确对数据操作后正确显示成功成功00016图书管理权限图书页面图书信息查询弹出框页是否可以正常使用弹出框页正确能正常使用成功成功输入特殊字符~!@$%^&*()_+=-[]{}\;’./”?<>或特殊字符组合提示输入错误给出处理成功成功手动输入正确图书名是否可以查询手动输入正确图书名可以查询成功成功手动输入非正确图书名是否可以查询手动输入非正确图书名查询无结果并给出提示成功成功手动输入正确图书名中关键字是否可以查询手动输入正确图书名中关键字可以查询成功成功手动输入非正确图书名中关键字是否可以查询手动输入非正确图书名中关键字查询无结果并给出提示成功成功清空图书名是否可以提交清空图书名查询出现所有图书信息成功成功手动选择图书类别是否可以查询手动输入图书类别可以查询成功成功清空图书类别是否可以出现修改信息框清空图书类别查询出现所有图书信息成功成功00017图书信息增/删/改输入特殊字符~!@$%^&*()_+=-[]{}\;’./”?<>或特殊字符组合提示输入错误给出处理成功成功手动输入正确图书名是否可以出现增/删/改信息框手动输入正确图书名可以进行增/删/改成功成功手动输入非正确图书名是否可以出现增/删/改信息框手动输入非正确图书名查询无结果并给出提示成功成功手动输入正确图书名中关键字是否可以出现增/删/改信息框手动输入正确图书名中关键字进行增/删/改成功成功手动输入非正确图书名中关键字是否可以出现增/删/改信息框手动输入非正确图书名中关键字查询无结果并给出提示成功成功清空图书名是否可以提交清空图书名查询出现所有图书信息成功成功00018增加按钮增加按钮能否正常使用能正常使用成功成功能否连续点击,连续点击是否对此增加信息提交多次连续点击只增加一条数据,而不添加多条相同数据成功成功增加成功是否有给出提示增加成功给出增加成功的提示成功成功增加成功后,页面跳转到何处转到图书数据列表页(保存最近一次的状态页面)成功成功00019修改按钮修改按钮能否正常使用能正常使用成功成功能否连续点击,连续点击是否对此修改信息提交多次连续点击只修改数据,而不添加数据成功成功修改成功是否有给出提示修改成功给出修改成功的提示成功成功修改成功后,页面跳转到何处转到图书数据列表页(保存最近一次的状态页面)成功成功00020删除按钮删除按钮能否正常使用能正常使用成功成功能否连续点击,连续点击是否对此删除信息提交多次连续点击只一条删除数据,而不重复添加数据成功成功删除成功是否有给出提示删除成功给出删除成功的提示成功成功删除成功后,页面跳转到何处转到图书数据列表页(保存最近一次的状态页面)成功成功00021取消按钮取消按钮能否正常使用能正常使用成功成功点击取消按钮是只清空所填数据还是返回上一页返回上一页图书数据列表页成功成功能否快速连续点击,是什么结果返回上一页图书据列表页成功成功00022图书信息分页控件点击“首页、上一页、下一页、尾页”能正确分页、翻页成功成功页面跳转按钮能选择页数和正确跳转成功成功对数据增/删/改后是否正确对数据操作后正确显示成功成功00023退出系统导航栏退出系统按钮点击退出按钮能否正常使用能正常使用成功成功能否快速连续点击,是什么结果返回登录页成功成功00024个人信息导航栏个人信息按钮点击个人信息按钮能否正常使用能正常使用并跳转个人信息页成功成功能否快速连续点击,是什么结果跳转个人信息页成功成功个人信息修改按钮修改按钮能否正常使用能正常使用成功成功能否连续点击,连续点击是否对此修改信息提交多次连续点击只修改数据,而不添加数据成功成功修改成功是否有给出提示修改成功给出修改成功的提示成功成功修改成功后,页面跳转到何处转到个人信息页(保存最近一次的状态页面)成功成功能否连续点击,连续点击是否对此修改信息提交多次连续点击只修改数据,而不添加数据成功成功(4)用户并发测试用例测试需求输入(并发用户数)用户通过率期望性能平均性能登录功能10100%989720100%989850100%9896.5增/删/改/查功能10100%989620100%9896.550100%9897退出功能10100%989620100%9897.550100%9898(5)大数据量测试用例测试需求输入(并发用户数)用户通过率期望性能平均性能登录功能15000条记录100%989730000条记录100%989850000条记录100%9896.5增/删/改/查功能15000条记录100%989630000条记录100%9896.550000条记录100%9897退出功能15000条记录100%989630000条记录100%9897.550000条记录100%9898(6)负载测试用例测试需求输入期望输出是否正常运行客户端Window2000Xp输出正常并正常运行是Window2000(S)输出正常并正常运行是Window2000(P)输出正常并正常运行是Window2003输出正常并正常运行是MACOS输出正常并正常运行是MACOSX输出正常并正常运行是数据库服务器Window2000Xp输出正常并正常运行是Window2000(S)输出正常并正常运行是Window2000(P)输出正常并正常运行是Window2003输出正常并正常运行是MACOS输出正常并正常运行是MACOSX输出正常并正常运行是浏览器Safari输出正常并正常运行是IE4.0+输出正常并正常运行是FireFox输出正常并正常运行是GoogleChrome输出正常并正常运行是Opera输出正常并正常运行是6.3测试结果1、管理员进行登录测试:测试通过;2、管理员进行图书新增功能测试:测试通过;3、管理员进行图书查询功能测试:测试通过;4、管理员进行图书信息修改功能测试:测试通过;5、管理员进行图书信息删除功能测试:测试通过。结论本系统使用VisualStudioCode作为前台操作界面实现对图书管理系统的功能操作工具,结合HIML+CSS+Javascript以及jQuery进行相对应的功能实现和设计。本次图书管理功能通过前期设计,开发,到最后经过测试运行,充分展示了该系统功能具有可行性和可扩充性。但是对于数据库的相关操作和开发语言进一步提高,对于数据表的关联查询技术有待进一步研究,从而使得整个系统功能的后台数据更加合理有效的管理与使用。通过这段时间对该功能系统的研究,从功能系统的初始,从需求分析,到概念设计,逻辑设计,再到最后的系统实现与维护,虽然开发过程很累,但每一步都获益匪浅,快去有效的编写正确的代码,对待开发过程中的问题积极主动的去寻求解决,直到功能代码全部开发完毕,然后部署到服务器上,再进行bug修改,便有破茧成蝶的感觉。在这个设计中,我不仅仅从学习了web前后端分离开发的模式,更是提高了数据库的相关知识,也亚加体会

温馨提示

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

评论

0/150

提交评论