1、 题 目: 高校图书馆管理系统 设计与实现 学 院: 计算机科学与技术学院 专 业: 计算机科学技术与应用 班 级: 学生姓名: 学 号: 指导教师: 目录目录2内容摘要4引言5第一章 概论61.1图书管理的现状61.2图书管理的发展背景和意义6第二章 图书管理系统开发相关技术的介绍62.1系统的关键技术详细介绍62.1.1JSP技术62.1.3 SQL介绍7第三章 系统分析73.1系统需求分析73.2系统功能结构83.3数据流程图83.4可行性分析93.4.1技术可行性93.4.2经济可行性103.4.3操作可行性10第四章 系统总体结构设计104.1.系统结构设计104.2数据库设计114
2、.2.1数据需求114.2.2数据库概念结构设计114.2.3创建数据库12第五章系统详细设计155.1登录模块设计155.2图书馆主界面模块的设计165.3日常工作功能模块的实现185.3.1 借书处理185.3.2还书处理195.3.3 图书续借205.4读者资料维护功能模块的实现215.4.1读者类型管理功能界面215.4.2 读者档案管理功能界面:225.5图书资料维护功能模块的实现245.5.1.图书类型管理界面:245.5.2图书档案管理界面:255.6 查询功能模块的实现275.7系统管理功能模块的实现29第六章 系统功能的测试与维护316.1系统测试的方案与技术316.1.1模
3、块测试316.1.2测试环境与配置346.2测试总结346.3系统维护34第七章 结论35参考文献35高校图书馆管理系统的设计与实现内容摘要图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护,以及服务器端、客户端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库。而对于后者则要求web程序具有功能完备,易使用等特点。 本次课程设计利用MyEclipse开发工具和MySQL数据库来设计这个图书管理系统。该系统要解决的图书管理所要解决的问题,可以满足图书管理基本要求,包括添加、管理等功能。该系统能根据读者的需求,快捷方便的为读者提供借
4、阅服务。本系统解决了学校图书馆理事务中的常用基本问题及相关统计工作。实现图书管理员对图书的分类、录入和新进图书的基本操作,对图书借阅情况的查询和对系统的维护等。本系统主要包含6个功能模块:管理员管理,读者管理,图书管理,图书借还,系统查询和系统维护。关键词: 图书管理系统,MyEclipse,MySQL引言图书管理系统是专门针对学校图书管理而开发的通用型很强的管理系统。随着学校图书量的不断扩大,学生的频繁借书和还书操作,原来的手动记账已经远远不能满足现在的需要了,现今信息化的时代,图书管信息资源的有效管理已经成为学校学生获取图书信息的关键所在。应用信息化的技术对图书进行管理,不仅简化了管理员的
5、工作程序,而且保证了数据的准确信。系统主要的模块有图书管理,读者管理,借阅管理等,可实现图书管理业务,使得图书馆理系统极大限度的应用于现代化图书管理中。第一章 概论1.1图书管理的现状随着计算机技术的快速发展,它已经成为我们在生活中不可或缺的一个得力助手。在一些高校,也相继采用了图书管理系统来管理图书,取得了很大的成效。使用计算机对图书信息进行管理,具有手工管理所无法比拟的优点。在现实生活中,随着数据库技术、网络技术和科学管理方法的发展,计算机在管理上的应用日益广泛,管理信息系统逐渐成熟起来,并且给管理带来了新的发展。介于目前学校图书数目剧增,图书信息量也呈暴增的形势,因此对图书管理系统的要求
6、越来越高,图书管理系统也在此基础上有了很大的发展,但是各系统力求使其功能简单明了,而且齐全、易于操作。1.2图书管理的发展背景和意义当今计算机及网络技术的飞速发展,计算机应用在全球范围内日益普及,社会也正快速向信息化社会前进,信息系统的作用也越来越大。图书馆的图书馆理和借阅管理还停留在纸质的操作上,这样的管理已经不能适应时代的发展,因为浪费了很多的人力和物力,在信息发展的如今,这种传统的管理方法必然被以计算机为基础的信息管理所取代,因此根据图书馆目前的实际情况来开发一套新的图书管理系统是十分必要的。通过对管理系统模型的研究,提出一构造图书信息管理系统模块的方法,并利用所学的知识,结合其他图书管
7、理业务常识,建立一套有效的图书管理系统,可以减少工作量,将管理工作科学化、规范化,提高图书馆管理的工作质量和工作效率。第二章 图书管理系统开发相关技术的介绍2.1系统的关键技术详细介绍2.1.1JSP技术JSP(全称JavaServer Pages)是由Sun Microsystems公司倡导和许多公司参与共同创建的一种使软件开发者可以响应客户端请求,而动态生成HTML、XML或其他格式文档的Web网页的技术标准。JSP技术是以Java语言作为脚本语言的,JSP网页为整个服务器端的Java库单元提供了一个接口来服务于HTTP的应用程序。在传统的网页HTML文件(*.htm,*.html)中加入
8、Java程序片段(Scriptlet)和JSP标签,就构成了JSP网页Java程序片段可以操纵数据库、重新定向网页以及发送E-mail等,实现建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持Java,也可以访问JSP网页。JSP与Serverlet一样,是在服务器端执行的。通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。WEB服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。插入的Java程序段可以操作
9、数据库、重新定向网页等,以实现建立动态网页所需要的功能。 2.1.2 JavaScript技术JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。它是一种动态、弱类型、基于原型的语言,内置支持类。2.1.3 SQL介绍MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言-结构化查询语言(SQL)进行数据库管理。 由于MySQL是开放源代码的,因此任何人都可以在General Public License的许
10、可下下载并根据个性化的需要对其进行修改。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。第三章 系统分析3.1系统需求分析长期以来,人们使用传统的人工方式管理图书馆的日常业务,其操作流程比较繁琐。通过搜集资料,总结出了需求分析的结果,系统应满足一下的需求:图书馆管理系统是一个供内部人员使用的系统。而图书馆的工作人员也分为两类,一类是普通管理员,一类是超级管理员,根据不同管理员可设置相应的权限。图书管理系统需要满足图书管理员对图书借阅者借书和还书记录进行操作的权限,在此模块中,图书馆管理员可以为图书借阅者加入借书记录或是还
11、书记录,并生成相应的列表给用户查看和确认。图书管理员可以浏览、查询、统计、添加借阅图书的基本信息及删除已归还的图书的基本信息,当删除某条图书借阅的基本信息记录时,应实现对该图书借阅者借阅记录的级联删除。图书馆管理人员功能的信息量大,数据安全性和保密性要求最高。本功能实现对图书信息、借阅者信息、读者信息和管理员的信息查看及维护。图书馆管理员可以浏览、查询、添加、删除、修改图书的基本信息,浏览、查询、添加、删除、修改图书借阅者的基本信息等。3.2系统功能结构根据图书馆管理系统的特点,可以将其分为系统设置、读者管理、图书管理、图书借还、系统查询等5个部分,其中各个部分及其包括的具体功能模块如下图所示
12、。图书馆管理系统系统查询图书管理读者管理系统设置图书借还图书借阅查询更改口令图书归还图书续借图书档案查询推出系统图书档案管理图书类型管理读者档案管理读者类型管理图书借阅书架设置管理员设置图书馆信息3.3数据流程图数据流程图是描述实际业务管理系统工作流程的一种图形表示法。图书管理系统主要是为了对图书,读者基本信息等进行计算机管理。根据系统的需求分析,画出图书馆管理系统的系统流程图,如下图所示。读者图书借阅图书续借图书归还管理员管理图书档案管理读者档案信息读者档案获取读者信息图书档案图书借阅档案根据读者信息获取借阅信息完成图书续借完成图书借阅归还相关图书图书归还档案3.4可行性分析 通过对该图书馆
13、的各个方面进行了具体的了解之后,现对开发图书管理系统的可行性进行分析。3.4.1技术可行性技术可行性包括以下几个方面:硬件,软件,技术人员。针对这三个方面可行性都是没有问题的,本系统采用MyEclipse开发工具加MySQL数据库。目前,数据库利用工具较多,每种工具都具有各自的特点和适用范围,因此,在选择数据库时,应考虑数据库应用的特点及使用范围,选择最合适的。3.4.1.1 MyEclipseMyEclipse 是一个开放源代码的、基于Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。3.4.1.2MySQL由于MySQL是一款免费的数据库,用
14、MySQL作后台数据库来学习数据库编程,是非常方便使用的,且简单易学。一个普通的计算机用户可以很快的掌握它。3.4.2经济可行性本图书管理系统能为图书管理者提供准确、及时的信息,对管理者的决策提供有利的支持;能够提高图书管理者的工作效率,减少手工人员及费用等,这些都是使用系统所带来的间接收益。同时也促进了学校信息化的进程,提高学校的管理效率。3.4.3操作可行性系统采用完全的图形化界面,易于管理,方便管理者查询设备信息,能够满足使用者的要求。该系统应该提供简单的操作界面,能够快速的实现查书、借书、还书功能。 综上所述,开发图书管理系统在技术上、经济上、操作上都是可行的。第四章 系统总体结构设计
15、4.1.系统结构设计图书管理系统包含图书信息编辑、读者管理、查询等功能,该系统执行时,先输入数据,然后根据输入的数据选择执行路径;购入图书进行登记、编目调用图书信息编辑功能,借书、还书调用功能。图书馆管理系统属于事务型系统,其读者与管理员间的流图如下图所示:图书馆管理系统 借书读者读者拒绝借书还书借书信息管理员统计表系统结构示意图如下:图书馆管理系统图书信息编辑图书流通图书查询读者管理还书借书 输入图书信息4.2数据库设计4.2.1数据需求通过对系统进行需求分析、系统流程图以及系统功能结构的确定,首先将要记录的信息分类,要记录的信息如下。(1)读者信息:包括证号、姓名、联系方式、已借书数目、读
16、者类别和能否借书等。(2)出版社信息:包括名称、地址、网址、E-mail等。(3)书籍信息:包括书号、定价、出版社和书名等。(4)借阅信息:包括借阅日期、应归还日期、能否续借、书号和证号等。(5)管理者信息:包括管理者名称、对应密码和对应权限等。根据这些需要,本系统需要“读者信息”表,“出版社信息”表,“书籍信息”表,“借阅信息”表和“管理者信息”表。4.2.2数据库概念结构设计根据规划出的实体有:图书信息实体、读者信息实体、图书借阅信息实体。各个实体具体的业务流程图如下:读者信息读者编号. .密码借阅证号读者编号图2-1读者信息实体E-R图图书信息 入库日期作者书名图书编号图2-2图书信息实
17、体E-R图借阅信息 图书编号归还日期 作者书名图2-3借阅信息实体E-R图4.2.3创建数据库为了实现图书管理系统对数据的长期存储,并使数据安全。在MySQL软件中,创建数据库db_librarysys作为本软件保存数据的位置,共包含9张表。下面分别给出这些数据表的概要说明及主要数据表的结构。管理员基本信息表tb_manager,如表3-1所示。当管理员登录图书馆管理系统时,需要通过登录窗口验证成功后才能进入系统主页。管理员信息实体,用于存储管理员的登录名称和登录密码。表3-1 管理员信息表字段名数据类型长度主键否描述idint10是管理员编号namevarchar30否管理员名称PWDvar
18、char30否管理员密码图书馆管理员权限设置表tb_purview,如表3-2所示。只有系统分配的用户才能操作图书馆管理系统,而用户的权限又各不相同。表3-2 管理员权限设置表字段名数据类型长度主键否描述idint11是管理员编号syssettinyint1否系统设置readersettinyint1否读者管理booksettinyint1否图书管理borrowbacktinyint1否图书借还sysquerybit1否系统查询读者信息表tb_reader,如表3-3所示。当有读者借阅图书时,要对读者的各项信息进行记录,以方便归还图书和已借阅图书的历史查询,读者信息实体,用于存储所有借阅图书的
19、读者信息。表3-3读者信息表字段名数据类型长度主键否描述idint10是读者编号namevarchar20否读者名称sexvarchar4否性别barcodevarchar30否读者条形码vocationvarchar50否职业birthdaydate0否生日paperTypevarchar10否证件类型paperNOvarchar20否证件号码telvarchar20否电话emailvarchar100否E-mailcreateDatedate0否注册日期图书信息表tb_bookinfo,如表3-4所示。不同的图书,会有不同的图书信息。对这些图书信息进行详细的记录,方便了图书的分类和查询。图
20、书信息实体,用于存储所有图书的相关信息。表3-4 图书信息表字段名数据类型长度主键否描述barcodevarchar30否图书条形码booknamevarchar70否图书名称typeidint10否图书类型authorvarchar30否作者translatorvarchar30否译者ISBNvarchar20否作者名称pricefloat8否图书价格pageint10否页码bookcaseint 10 否书架inTime date0 否 入馆时间operatorvarchar30 否操作员deltinyint1 否借阅次数idint11是图书编号图书借阅和归还信息表tb_borrow,如表
21、3-5所示。图书借阅信息实体,用于存储所有图书借阅归还情况的信息,以准确地记录每本图书的借阅归还信息。表3-5 图书借阅表字段名数据类型长度主键否描述idint10是借阅编号readeridint10否读者编号bookidint10否图书条形码borrowTimedate0否借书时间backTimedate0否还书时间operatorvarchar30否操作员ifbacktinyint1否是否归还书架信息表tb_bookcase,如表3-6所示。图书馆对图书的分类,通常是将不同类型的图书分别放置在相应类型的书架上。书架信息实体,用于存储图书馆中所有的书架信息。表3-6 书架信息表字段名数据类型
22、长度主键否描述idint10是书架编号namevarchar30否书架名称图书类型信息表tb_booktype如表3-7所示。图书馆会有不同类型的图书,为了避免图书归类发生混乱,必须建立一个图书类型信息实体,用于存储图书的类型信息。表3-7 图书类型信息表字段名数据类型长度主键否描述idint10是图书类型编号typnamevarchar30否类型名称daysint10否可借天数图书馆信息表tb_library,如表3-8所示。每个事物都会有其自身的历史背景,图书馆也不例外。为了记录图书馆的历史背景及其相关的信息,需要建立一个图书馆信息实体,用于存储图书馆的有关信息。表3-8图书馆信息表字段名
23、数据类型长度主键否描述idint10是编号librarynamevarchar50否图书馆名称curatorvarchar10否馆长名称telvarchar20否联系电话addressvarchar100否联系地址emailvarchar100否电子邮件urlvarchar100否网址createDatedate0否建馆时间introducetext0否备注读者类型信息表tb_readertype,如表3-9所示。在读者群体中,会有不同的分类,例如借阅图书的读者可能是教师、学生等,所以对读者人群进行有效的分类是至关重要的。读者类型信息实体,用于存储读者的类型信息。表3-9 读者类型信息表字段名
24、数据类型长度主键否描述idint10是类型编号namevarchar50否类型名称numberint4否可借数量第五章系统详细设计本系统的设计的最大的特色是采用了分层的设计思想,系统界面采用Web页面作为表现层和数据粘合层,为了进行一些常用的逻辑处理的需要还创建了业务逻辑层,为了为逻辑处理提供数据有创建了数据层,同时为了数据访问创建了数据模型层。在本节中示例的功能代码,都比较短并且不具体,那是因为很多功能都封装的功能类库里了,这里说明一下。具体请看系统源代码。5.1登录模块设计如果使用系统就必须先登录到系统,用户通过登录模块登录系统。具体操作为:打开浏览器,然后在地址栏中输入http:/loc
25、alhost:8080/JspLibrary/,即看到系统首页了。根据输入用户名及其密码,进入系统。界面效果如图5-1:图5-1 系统登录界面主要处理代码如下:function check(form)if (form.name.value=)alert(请输入管理员名称!);form.name.focus();return false;if (form.pwd.value=)alert(请输入密码!);form.pwd.focus();return false;5.2图书馆主界面模块的设计在该图书馆管理系统主界面中有Banner信息栏(显示当前登录用户,并对页面可以及时刷新)、导航栏包括日常工
26、作(下拉表中有借阅处理、还书处理、图书续借)、读者资料维护(读者类型管理、读者档案管理)、图书资料维护(图书类型设置、图书档案管理)、查询(图书资料查询、借阅历史记录查询、借阅到期提醒)、系统管理(图书馆信息、管理员管理、书架设置)、更改口令、退出系统。系统首页主要显示了图书借阅排行榜。利于查看借阅情况,读者对哪些图书感兴趣,便于管理图书。图书馆主界面如下图5.2所示: 图5-2图书馆管理系统主界面主要代码如下:if(coll_book!=null & !coll_book.isEmpty()Iterator it_book=coll_book.iterator();int i=1;int d
27、egree=0;String bookname=;String typename=;String barcode_book=;String bookcase=;String pub=;String author=;String translator=;Float price=new Float(0);while(it_book.hasNext() & i6)BorrowForm borrowForm=(BorrowForm)it_book.next();bookname=borrowForm.getBookName();barcode_book=borrowForm.getBookBarcod
28、e();typename=borrowForm.getBookType();degree=borrowForm.getDegree();bookcase=borrowForm.getBookcaseName();pub=borrowForm.getPubName();author=borrowForm.getAuthor();price=borrowForm.getPrice();5.3日常工作功能模块的实现日常功能模块主要有借书处理,还书处理,图书续借三个模块。5.3.1 借书处理主要是用来图书的借阅功能,在页面上输入读者的编号,就能查询读者的借阅情况。如果要借阅哪本书,再提供借阅的图书编号
29、之后,确定之后图书借阅就成功了。其操作界面如下图:图5.3 借图书之前操作界面图5.4 借图书之后操作界面如果读者要借的书不存在或者读者的借书量已经超过了能够借阅的最大数量时,则借阅不能成功。其主要设计代码如下:function checkreader(form)if(form.barcode.value=)alert(请输入读者条形码!);form.barcode.focus();return;form.submit();function checkbook(form)if(form.barcode.value=)alert(请输入读者条形码!);form.barcode.focus();r
30、eturn;if(form.inputkey.value=)alert(请输入查询关键字!);form.inputkey.focus();return;if(form.number.value-form.borrowNumber.value=0)alert(您不能再借阅其他图书了!);return;form.submit();5.3.2还书处理与借书过程差不多,在面页中输入读者的编号,就能看到已借阅的图书信息,选择你要归还的图书,图书管理员将信息记录下来,其操作界面如下图: 5.5 还图书之前操作界面图5.6 还图书之后操作界面本次操作归还两本打算,完成成功。其主要代码如下:function
31、checkreader(form)if(form.barcode.value=)alert(请输入读者条形码!);form.barcode.focus();return;form.submit();5.3.3 图书续借如果你借了一本书发现到期了之后,如果你想要到保有这本书,就可以向图书管理员提供你要续借的书名,由图书管理员操作完成,其操作界面如下图:5.7 图书续借操作界面其主要代码如下:function checkreader(form)if(form.barcode.value=)alert(请输入读者条形码!);form.barcode.focus();return;form.submi
32、t();5.4读者资料维护功能模块的实现读者资料维护有两个功能模块,分别为读者类型管理和读者信息管理。读者类型管理设置不同类型能够借阅图书的最大数量不一样,读者信息管理则是记录读者相关的信息,并且可以对这些信息进行添加、删除、修改等功能。其各自操作界面如下所示:5.4.1读者类型管理功能界面图5.8 读者类型管理操作界面点击界面上的“添加读者类型信息”,出现图5.9,可以增加类型名称和其对应的借书数目;点击“修改”,可以修改学生类型名称和其对应的借书数目;点击“删除”,实现删除读者类型。图5.9 添加读者类型操作界面5.4.2 读者档案管理功能界面:图5.10 读者档案管理界面设置读者信息的时
33、候需要输入读者全面的信息,比如姓名,姓名,借阅证编号,选择读者类别,有效证件,证件号码,电话,e-mail等信息。而且证件的号码是必填的。除此,可以添加读者信息,显示添加成功图标,还可以修改读者信息;如下图所示:图5.11 添加读者详细信息其主要代码如下:String str=null;ReaderTypeDAO readerTypeDAO=new ReaderTypeDAO();Collection coll=(Collection)readerTypeDAO.query(str);if(coll=null | coll.isEmpty()out.println(alert(请先录入读者类型
34、信息!);history.back(-1););else Iterator it=coll.iterator(); int ID=0; String name=;function check(form)if(form.name.value=)alert(请输入读者姓名!);form.name.focus();return false;if(form.barcode.value=)alert(请输入条形码!);form.barcode.focus();return false;if(form.paperNO.value=)alert(请输入证件号码!);form.paperNO.focus();
35、return false;图5.12 添加成功图标点击读者姓名(注:显现灰色即为可连接标识),可以查询查看读者详细资料,比如点击读者姓名wgh,查看他的详细资料,如下图5.13。图5.13 读者详细资料5.5图书资料维护功能模块的实现图书资料维护模块有两个模块:图书类型管理:对图书进行分类,设置图书的借阅时间。图书档案管理:对图书的相关信息进行记录,设置图书基本信息。5.5.1.图书类型管理界面:图5.14 图书类型管理界面在图书类型管理界面中,同样可以对图书类型实现增、删、改功能,如图5.15所示。图5.15 添加、修改图书类型及可借天数5.5.2图书档案管理界面:图5.16 图书档案管理界
36、面图书档案包含很多与图书相关的信息,如图书编号,图书名称,图书类型,作者,译者,价格,出版社,所在书架等图书基本信息。此处,也可以实现增、删、改、查功能。通过点击灰色标识的字体。点击“Java 学习指南”,出现此图书的详细信息界面,如下图5.17所示。点击图书Java 学习指南对应的“修改”,出现修改图书信息界面如下图5.18,点击“删除”,可实现删除此图书信息。图5.17图书详细信息界面图5.18 修改图书信息界面其主要代码:String str=null;BookTypeDAO bookTypeDAO=new BookTypeDAO();Collection coll_type=(Coll
37、ection)bookTypeDAO.query(str);if(coll_type=null | coll_type.isEmpty()out.println(alert(请先录入图书类型信息!);history.back(-1););else Iterator it_type=coll_type.iterator(); int typeID=0; String typename1=; BookCaseDAO bookcaseDAO=new BookCaseDAO(); String str1=null; Collection coll_bookcase=(Collection)bookca
38、seDAO.query(str1); if(coll_bookcase=null | coll_bookcase.isEmpty() out.println(alert(请先录入书架信息!);history.back(-1);); else Iterator it_bookcase=coll_bookcase.iterator(); int bookcaseID=0; String bookcasename=; PublishingDAO pubDAO=new PublishingDAO(); String str2=null; Collection coll_pub=(Collection)
39、pubDAO.query(str2); if(coll_pub=null | coll_pub.isEmpty() out.println(alert(请先录入出版社信息!);history.back(-1);); else Iterator it_pub=coll_pub.iterator(); String isbn=; String pubname=; BookForm bookForm=(BookForm)request.getAttribute(bookQueryif);5.6 查询功能模块的实现查询功能模块包含三个功能模块:图书资料查询,借阅历史记录查询和借阅到期提醒。图书资料查询
40、可查询图书一些相关的信息,根据图书的图书编号,书名,作者,出版社等,点击查询,可以查询与图书有关的信息,其操作界面图如下图所示:图5.19查询操作界面例如,选择书架A,进行查阅。如下图5.20。图5.20 通过书架A查询界面图本系统可以通过图书信息进行查询。查询某一时间段的借阅历史,如下图5.21。图5.21 通过读者名称查询借阅历史记录界面本系统还可以看到借阅图书的到期提醒。图5.22 借阅到期提醒5.7系统管理功能模块的实现主要有三个模块,分别为图书馆信息,管理员设置和书架设置。图书馆信息:图书馆名称、馆长名、联系方式、建馆时间及介绍。管理员设置:添加登录此系统的用户信息,修改其权限设置,
41、使具有不同权限的用户登录此系统,还具有删除功能。下图5.23为管理员设置界面。图5.23管理员权限设置界面学生登录后只能在权限范围内进行操作。主要代码如下:书架设置:设置不同的书架,可以更好的对图书进行分类。可以增删改功能。如下图。图5.24 书架界面图5.25 书架添加与修改界面 第六章 系统功能的测试与维护6.1系统测试的方案与技术图书管理系统完成以后,还要对它做一次系统测试,以此来检查系统的完整性及安全性。本系统将会在本地服务器运行,并进一步调试。全面掌握系统的内部结构和系统功能从而进行白盒测试和黑盒测试。系统的开发经过了很长的时间,面临着很多复杂的问题,在软件的每个生存周期都可能会多多
42、少少产生一些错误,而测试的目的就是发现软件中以前未发现的错误,尽早的对软件进行修正。所有软件的测试都是为了用户有更好的体验,因此好的测试方案因第一考虑到用户的需要体验。利用Pareto原理,减少测试的工作量,着重测试相对容易出错的20%那部分模块。在这里应先进行小规模的测试,进而进行大规模的测试。先测试单个程序模块,进而测试相对集成的模块。从而尽可能的比较完整的覆盖程序逻辑以达到预定要求的可能性。6.1.1模块测试6.1.1.1登录模块测试测试内容:用户是否能够成功登录是否必须要输入正确的用户名以及密码。操作:打开浏览器,输入http:/127.0.0.1:8080/Library_Sys/,打开图书管理系统的首页,不输入任何帐户,点击登录,返回如图6.1。图6.1用户登录失败图若输入帐户tsoft,错误密码,则返回如图6.2界面。图6.2 错误提示输入正确的用户名和正确的密码111,则直接进入网站首页,返回如图6