图书管理信息系统

 摘要:为了提高日常的图书管理信息效能,本文根据通常的图书管理工作过程,以B/S模式设计了一种图书信息管理系统,以适应图书馆的管理工作需要。

本文主要介绍了图书管理信息系统设计的过程,主要从系统分析,系统设计和实现,系统测试等方面来进行介绍。前端设计页面主要使了Vue框架,后端使用springboot框架来进行开发,目前采用的数据库系统是Mysql,在JDBC驱动连接下,完成了整个系统的数据处理。本系统使用的是MVVM模式来进行开发,本系统大量使用了当今软件设计领域最为主流的软件技术,提高了系统开发效果,降低时间成本。

 关键词:java;图书管理信息;MVVM

 一、绪论

  (一)开发背景

这是一个飞速发展的时代—21世纪,因为科技越来越兴旺,我们的生活在发生着改变。

我们所生活的时代到处充斥着科学的印记,带领着互联网、网络信息技术的不断进步,大数据包围着我们,在提供无比便捷的同时,带来新的机遇与商机。带来了在网络科技方面取得了巨大进步的社会。而读书在社会的进步中发挥着重要作用,正如“读万卷书,行万里路。”

随着互联网的兴起,现在更多的人通过在网上看一些电子书,新闻,来获取知识,而很少有人再去图书馆,虽然电子书更加的丰富,成本更加的低。可是去图书馆能够更加增强我们的阅读体验感,能够真正感受到我们是在汲取知识,与知识在进行交流。能够提升阅读的适用性,我们可以随意的挑选自己想要的书籍,只要我们想,随时可以拿起来读书,但是电子书,更像是一顿快餐,更多是饱腹,而不能让人回味,进行细细品尝,对于更加有思考型的图书而言,电子书的效果可能没有那么好。在图书馆读书,能够更加专注我们的情绪,我们可以在书的精妙之处,留下属于我们自己的记号。在图书馆读书,我们能够平复自己的心情,快速忘记一些不愉快的事情,因此,在这个快餐的时代,我们应该放下手机,去图书馆走一走,让自己的生活慢一点,去思考,去冷静一下。

社会的发展,对于传统的图书馆管理方式有着巨大的冲击,传统的管理方式已经不再适合现在的社会发展,因此图书馆在一些一二线城市和一些高校里面,图书馆早已经实现了使用软件的方式去管理图书馆,管理系统的设计,方便了图书馆的管理,让工作人员把自己的双手从繁琐的工作中解救出来,让工作人员尽可能的减少自己的错误。

目前社会上许多图书管理系统主要是针对于大型图书馆管理,对中小学而言,由于中小学的人数没有特别多,图书馆的规模也不会特别大,因此对于中小型图书管理系统也是有较多的需求。还有一些比较落后的地方,他们仍然使用着传统的手工进行图书馆管理,工作任务比较繁琐沉重。然而现在社会针对于中小型图书馆的管理系统还是比较少的,大型图书管理系统对于小型图书管而言会浪费资源,且后续对于系统的维护和更新可能需要更多的资金,对于小型图书馆而言,资金不是特别充足。因此,开发中小型图书管理系统是非常有必要的。

 (二)开发意义

图书管理信息系统的开发,可以避免管理工作人员出现操作的错误,让自己的工作更加的简单方便,可以使图书管理有更高质量的服务。图书管理系统的设计,可以让工作人员节省了大量的时间,减轻自己的工作量,工作人员也会心情愉悦,减少体力劳动。

在当前社会下,我们要学会合理的利用资源,为了快速的将所有资源进行分类,以便工作人员查阅,提高网络信息的资源利用率,所以图书管理系统需要采是先进的管理技术。系统的使用对工作人员的综合素质有一定的要求,在科学技术快速发展时代,我们要不断的充实自己,不断地学习。增强自身的综合素质和综合能力。

针对于企业或者图书馆的经营者而言,图书管理信息系统的开发有利于在人力,物力方面,节省了巨大的成本投资,而且对于图书的信息有更好的管理,及时知道更多和图书,工作人员等情况。从而自己更加的放心,对于图书馆的内容了解的更加清晰,明确。对于用户而言,系统的开发为人们节省了大量的借书时间,方便人们的生活。

(三)研究内容

随着人们对于图书需求量的增加,我们在许多城市已经有了比较合理的图书管理方式,同时我们也应该开发出多种不同规模的图书管理信息系统,让人们注意到,对于不同的需求,我们应该开发不同的管理系统,并且我们让人们选择比较合适的图书管理系统,因此图书管理信息系统还是有比较大的发展空间。

根据以上原则,本图书管理信息系统可以分为用户管理,图书管理,读者管理等模块。

(四)论文结构

(1)绪论

主要从开发背景,研究意义,和研究内容方面说明了开发图书管理系统的重要性,然后对于本章内容进行总结。

(2)相关技术介绍

通过介绍Java和springboot、Vue、开发工具、mysql等方面把开发的软件以及语言所运行的环境进行说明,为系统的开发做好准备并且对于本章内容进行总结。

(3)系统需求分析

主要从目标,功能需求分析,系统的可行性方面来对系统的需求分析进行了阐述。

(4)系统设计

主要从开发模式,系统的各个功能的设计,数据库的连接以及表格的设计等方面介绍系统设计的初步思路。

(5)系统实现

从登录模块,用户注册模块,分页功能,图书审核,图书管理模块等分别介绍每个模块的实现,并对本章内容进行总结。

(6)系统测试

系统测试内容与方法,测试结果

(7)总结与展望

主要从论文总结和展望两个方面,说明自己系统的不足和对于未来的期待。

(五)本章小结

本章主要阐述了图书管理信息系统开发的必要性和本文的主要研究内容,主要从社会发展,目前图书馆管理,图书管理系统的目前发展以及研究额意义等方面对此进行说明图书管理系统的必要性。

二、相关技术介绍

  (一)Java和Springboot

Java是一种高级语言,它可以运行多个平台,是一门面向对象的编程语言,由于Java语言到目前为止将近30年的发展历程,语言已经到了一个比较稳定的程度,因此可以说是他是面向对象编程的代表,Java极好地实现了面向对象的理论,和C++相比较而言,人们能够理解起来更加的简单,比较容易上手。因此Java语言具有功能强大、简单易用、平台独立、面向对象、多线程、动态性等特点,可以用来写页面,前端程序,还可以用来编写系统应用程序等,是开发系统的最优选择。

Springboot是把java语言作为基础而形成的一种框架[6]。他是在Spring上改进而形成的,Spring能够完成的事情Springboot也能够完成,并且使用起来会更加的简单方便,功能更加的丰富,性能更加健壮。他里面包含了许多地的第三方库配置,只需要用一些代码就可以使Springboot应用起来,在此我们着重强调该框架是把java作为底层语言的框架,让使用者更加专心研究业务逻辑结构,对开发者而言方便的同时,还可以减少重复的代码。

根据以上说明,Java和Springboot的结合,会帮助我们节省更多的时间去写重复的代码,更加有条理,看起来更加的清晰。

(二)Vue简介

Vue是前端开发人员使用的框架。他是基于前端三剑客:HTML、CSS、JavaScript而封装形成的一种前端框架,他是一个轻量级的框架,他是一个试图,数据,结构分离的框架,目前在市面上是流行的一种框架,核心是只需要关注试图层,易于上手,方便于和第三方库或者既有整合项目,目前已经发展到Vue3版本,在此次开发中使用的版本是Vue2。

在本次开发中和Vue配合使用的是element-ui组件库,他是基于Vue2而形成一个组件库,里面有许多较为常用的的pc端组件,用户使用起来很方便,降低了前端的开发难度。这个组件库里有比较常见的组件,例如表格,表单,日期选择器等一些组件。我们可以根据官方文档里提供的组件,把组件进行改造,使之成为我们想要的组件,从而帮助我们更快的搭建好一个完整的页面,是选择Vue开发的不二选择。

 (三)开发工具

目前市面上可以选择编译工具有许多,如Dreamweave(dw),codepad,IntelliJ IDEA(idea),Visual Studio Code(VS Code)等等,在本次开发中我使用的前端开发软件是VS code,java语言的开发软件是idea。

Visual Studio Code是一款年轻的编辑器,里面内置了对前端语言的支持并且开发具有丰富的其他语言的拓展和扩展的支持,功能强大,并且支持几乎所有的主流语言,如果语法标点错误会进行提示爆红,还有语法高亮,智能代码补全等特点。综合所有VS Code更加适合于前端开发。

Idea是Java编程语言开发的集成环境,他是使用比较多一种开发工具,并且可以发开多种语言。在自动补充代码,各类版本工具,解析代码等方面的功能是非常强大的。它具有丰富的导航模式,能够查看历史记录,灵活的排版等功能。尤其是历史记录功能,可以不通过版本管理服务器,可以在IDEA上面就可以查看项目中任意文件的历史记录,当我们需要对一些内容进行修复时,轻而易举就可以进行修复。

Postman是谷歌公司开发的用来运行测试用例的浏览器插件。是一款十分流行的API调试工具,他提供了一种多窗口和多选项卡页面用于发送和接收接口请求,它可以发送几乎所有类型的Http请求。简单来说就是测试数据接口,查看自己的写的数据接口是否可以访问,拿到数据,是否存在问题。

 (四)MySQL

MySQL是一个开源的关系型数据库管理系统关系数据库,是将数据放置在不同的表中,而不是将所有数据存放在一个仓库中,这样提升了速度并提高了灵活性。许多的行和列组成一张表单,每个表单都有行,列和表头,同时还有键,键的值在当前列中具有唯一性,且所使用的SQL语言是用于访问数据库的最常用标准化语言。他有体积小,速度快,成本低的特点,拥有这一优势,所以一般系统开发都会选择MySQL数据库网站作为网站数据库,比较符合本次开发的需求。

 (五)本章小结

本章主要介绍了开发语言java以及springboot框架,前端所需的Vue和element-ui组件库,以及本次开发所需要的软件,为系统的开发做了充足的准备。

 三、系统分析

  (一)系统目标

“图书管理信息系统”主要是针对于工作人员,图书馆的管理者和读者而进行开发的。它为工作人员提供了图书管理信息,图书借阅审核等功能;为图书馆的管理者提供了对图书分类操作,管理员工信息等功能;为读者提供了借阅归还书籍申请,查看图书等功能。让图书馆工作清晰,明了,有条不紊的进行下去。

 (二)可行性论证

(1)经济可行性分析

图书馆的投资成本有:图书的购买,书桌,系统的开发资金和后期的系统维护资金,员工的薪水等等。因为图书馆使用的是一套系统,资源集中管理,所以费用更多的是使用在图书购买上。系统的设计,方便人员搜集图书资料并对其管理,为经营者带来更多的方便,图书馆的盈利会大于投资。因此,可以进行设计。

(2)技术可行性分析

图书管理系统的主要内容主要是减少工作人员的工作量,方便人借书,能够快速的了解信息并且及时处理,这一特点非常符合算计发展的特点,能够充分发挥,计算机信息传输速度快,准确度高的优势。计算机的硬件和软件技术的飞速发展,为系统的开发提供了技术条件。

(3)社会可行性分析

社会可行性同时也被称为操作可行性,在信息发展的情况下,软件的技术在图书馆的管理方面已经看到,对传统管理理念的冲击是我们每个人都可以看到的,目前,我们看到比较成熟的大型图书管理系统,已经引起了管理层和工作人员的调整。我们可以看到,他对于工作人员综合素质有较高的要求,使图书馆进行了结构精简。

(三)需求分析

1.性能需求

为了保证系统可以高效,流畅运行,我们必须对整个的图书系统有如下的基本性能需求:

(1)兼容性

系统应该具有良好的兼容性,能够兼容目前市场上比较常见的几种浏览器,如谷歌,火狐等浏览器。

(2)安全性

系统要冲分考虑到因使用角色的不同而有不同的功能,对系统应该做好过防护,对于未授权的角色,系统应该不能让其进行数据访问。

(3)可维护性

目前市场上大多数的管理系统已经使用的时间的很长了,在使用的过程中,伴随着很多问题,但由于技术过老,所以在进行系统更新,或者维护时,会比较发现问题的所在,所以,为了以后更方便的改进系统或者进行修复时,系统应该采用比较先进的技术来进行开发。

(4)用户界面

管理系统的面向对象是用户,拥有一个美观的界面会使人心情愉悦,所以一个美观的界面是重要的,美观的界面是建立在用户习惯上的,一个系统,根据用户习惯来设计,这样有利于系统更容易被用户接受,有助于减少使用上的障碍。

2.系统功能分析

在系统的开发阶段,我们要考虑系统的权限问题。因此我们要采用一种方式,来判断用户该进行哪种样的操作。目前我们将图书管理信息系统分为三大模块分别是分为超级管理员,管理人员,用户。所需要实现的功能如下。

登录功能:登录决定用户有没有资格能够进入系统,其次是判断账号的身份。是读者还是管理者,亦或是员工。

注册功能:注册功能只允许普通用户注册,管理员和超级管理不能注册。

借书还书申请:读者可以对图书提出一些申请,如借阅,归还,预约。

审核功能:工作人员需要对借阅和还书的读者进行审核,只有通过以后才允许借阅。

用户管理:超级管理员可以取消用户的借书资格等功能,超级管理员必须对个人进行发借阅卡,读者才可以借阅或者预约。

图书管理:超级管理员可以增加书籍的分类,对书籍有更好的管理。管理员可以增加图书,如数量等。

个人信息:每个人都可以对自己的信息进行设置,并且可以进行一些操作,如:更换密码等。

员工管理:超级管理员可以进行查看和增加员工,删除员工操作等。

(四)本章小结

系统分析是软件开发中的一个举足轻重的环节。本章主要从系统目标,系统的可行性分析,需求分析。在本章中,主要确定了系统实现的功能,软件必须完成哪些事情,对软件和运行环境的要求。

四、系统设计

  (一)系统设计思想

本系统是基于java语言来实现的,采用的MVVM的开发模式,MVVM主要是以下方面:

(1)M(Model)

模型,应用程序处理数据的部分,通常指从数据库读取数据。

(2)V(View)

界面,页面,应用程序处理界面显示的部分,通常根据模型数据创建。

(3)VM(ViewModel)

视图模型,是View和model的核心枢纽,首先是拥有一个观察者,当数据和视图其中有一方发生变化时[13],这个观察者就可以检测到,随之另一方也发生相应的变化。

MVVM模式也叫数据驱动视图,其设计理念是前端工程化的体现,让展示层展示逻辑,尽可能地交于数据来驱动,让数据地变化直接体现给用户,通过视图层删除所有的GUI代码,来使视图开发与剩余部分的分离,简单而言就是前后端分离的模式。

MVVM模式,将普通数据绑定到ViewModel上,会自动将数据渲染到页面中,前后两端互不影响,使前端进行数据的操作变化,数据的处理交由后台负责,能够更好的分辨是哪里出现的问题,使逻辑更加的清晰,从而使程序的开发更加的高效。并且用户界面我们可以随时进行改变。

(二)系统总体设计

根据以上的多种分析,可以分为管理员,超级管理,用户三个模块,每个模块有各自的系统操作。以下是系统总体设计图:

图4.1系统总体设计图

984289c3f9e95fca769f26b3782a6f0e  (三)系统功能模块的设计

登录:进入操作系统的过程被称为登录,根据账号和密码进行登录,还有验证码,根据所输入的信息,判断登录账号的信息,然后进入应该进入的界面。

图书管理信息:在该板块中,超级管理员和管理员都可以对图书的信息进行操作,可以将图书信息导出中。

员工管理:图书馆的管理者能够对员工的信息进行管理,对他们进行一定的操作。

读者管理:在该板块中工作人员可以对读者的信息进行增加删除等操作。

借书证管理:超级管理员需要分发借书证用户才能预约。

借书还书:用户可以查看书籍的同时,还可以进行借书功能,还有还书,书籍的预约等功能。

借阅管理:是图书管理系统中比较重要的一个模块,工作人员可以及时查看图书馆的借阅情况以及借阅历史记录,上面记录借阅者的个人信息,必要之时,可以对借阅者进行联系。

图书审核:管理员需要对图书的使用进行审核,包括同意借阅,归还等。

修改账号信息:这个功能中,我们可以设置自己的个人的信息,如名字,密码等内容。

(四)建立数据模型

通过建立系统的数据模型来理解和表示问题的信息域。通过对上面的需求分析和对功能模块的设定,可以知道该系统中包括了四大实体:书籍,管理员,超级管理员以及读者。经过对所有实体数据关系的梳理,可以绘制出以下图:

1.书籍信息实体图

图4.2书籍信息实体图

86db4a3a4dea86363166a17bf36c5819  2.管理员信息实体图

图4.3管理员信息实体图

158b34cd31cf6a28502ccbfc6c92cc6f3.超级管理员信息实体图

图4.4超级管理员信息实体图

fa2d1749b904cc4c7b7cefa5038b2b06  4.用户信息实体图

图4.5用户的实体关系图

0d062a1508012374e8e011f7c4f5f778  (五)数据库表格的设计

首先开启数据库,并把数据库进行连接,然后在Mysql上建立名称为library的数据库,在此数据库中包括以下表格:

Admin表格:这个表格是所有超级管理员的数据存放

c18579d2e6ae915d77c7c2e06cde0fe6

User表格:此数据库来记录普通用户的所有信息

19df0ac4e13e025b7f251e23b7453ad8

sorts表:此表格用来记录图书的分类

08bba815696a58b297056b79145ac63f

0697d8744f37591ea25098b99e6000b1

Borrow表:此表格用来记录借阅的一些信息

0fbce92922435226c4b420650bf470ae

c2c0cf4c4852b986f6abaf42634994ca  Book表格:此表格用来记录书籍的一些信息

439b0086aa52778cf0e2f757d71c8d23

(六)数据库和Java的连接

在上个小结中,已经初步设计好了数据库表,由于本系统使用的是java语言,那么在此小节中,将介绍如何把数据库和Java进行连接。

在第二章节介绍过,我们此次后端不仅使用Java语言,并且还结合了Java语言的框架springboot。我们首先在idea软件中,找到pom.xm这个文件,在那里面安装mysql的驱动器,也就是添加配置,此处可以在网上找驱动,然后更新该系统的maven,maven的作用就是在pom.xm文件中添加相应配置以后,他会自动下载相应的jar包,最后在applleation.yml这个文件中,进行详细配置,配置数据库的名字,账户,密码,地址,端口号,注意,此时mysql数据库与java连接的端口号不要和前端页面的端口号重合,在本系统中访问数据库的端口号为8801。

(七)本章小结

本章主要是描述了系统采用什么样的开发模式,从系统总体设计和系统功能模块两个方面阐述了系统的轮廓,使图书管理信息系统有个初步的框架,系统所需要的数据库表格也已经设计完成,数据库和Java已经进行连接。为系统的开发做了充足的准备。

 五、系统实现

  (一)登录模块实现

前面提到本系统的前端框架是vue,组件库是element-ui,我们使用element-ui里面的form表单搭建出一个登录的页面,form表单有自己内置的方法,我们可以按照自己的需求对方法改进。当用户填好信息以后,点击登录按钮,会用Post方法进行数据请求,请求的端口路径http://localhost:8081/student/findById,此时,输入的信息和数据库的信息进行比,如果该账号没有注册过,系统会出现弹框,提醒去注册,如果密码出现错误,会再次输入用户信息,开始判断用户的类型,进入自己的操作界面。

图5.1用户登录流程图

b1f9babc7dd5339887ebd5046e94ce1d  图5.2登录页面

2c2b91e7ad9e4707195e197e493bcd23  (二)注册的实现

首页直接有进入注册页面的按钮,点击此按钮,即可以切换到注册界面。注册页面是在名字为stuRegistry.vue的页面开发的。需要在注册页面填写注册所需要的信息,本系统所需要注册的个人信息是:用户名,手机号,密码,再次输入密码等。信息输入完成以后,点击按钮以后,会和后端的数据进行数据交互,交互的数据接口名称为http://localhost:8081/student/add。注册成功以后,会自动生成一组数字,那组数字必须要记住,那就是自己的登录账号。那组数字出现以后,会自动跳转到登录页面。

图5.3用户注册流程图

04c9d7e7223e6e7107ea50142c534f45  图5.4用户注册页面

dc6874986bb4d56d5467cae5c565a66a

(三)借书证管理的实现

用户首次登录图书管理信息系统,是没有预约书籍,借阅书籍的权力,信息首先会让超级管理了解到,需要等他发放图书证,用户才有借阅书籍的权力。首先是在user表中,里面有card这个字段名,1代表的是,该用户已经有了借书证,而0代表的是该用户没有借书证,在这里,超级管理员可以对有借书证的用户可以收回借书证,收回借书证就是把user表里面Card的值变为1。对于没有借书证的用户分发借书证,分发借书证就是把card值为1变为0。

图5.5借书证管理的数据流程图

b51c715589a35d459ae26de80dd33cf4  图5.6添加借书证界面

242d454675e29d95ae03390b3b5b39e1  图5.7删除借书证界面

99e41725d68a483042045e0b618ece7f  (四)员工管理模块的实现

这个模块也是针对超级管理员而言的,超级管理员可以随意增加工作人员,而不是通过注册,这样更保证了系统的安全。

首先超级用户能够查看目前图书馆里有多少员工,并且知道他们的信息。这个模块操作的是数据库db_libraryv2里面的managers表,点击左侧的员工查看,在该页面中能够对他们进行删除和修改操作,点击删除按钮,此时会使用delect方法对数据接口http://localhost:8081/managers/delect进行删除,此时根据Id进行删除。点击修改按钮,会进入员工信息修改的页面,但是不可以修改登录账号,这个登录账号是自动生成的。填写信息完成以后,会通过post方法对数据接口http://localhost:8081/managers/update的数据接口进行数据交互。

当想添加员工信息时,点击添加按钮,会跳转到对应的页面,当把增加所需要的信息添加好以后,点击按钮,会和http://localohost:8081/manager/add的数据接口通过post方法进行交互,来进行添加员工操作。以下是该模块的流程图和界面。

图5.8员工管理模块实现流程图

460291d934fead31276bd1361dbe3e6e  图5.9查看员工界面

ccf645a1df69cdb0cc80f59904c5f3ef  图5.10添加员工界面

a6cd59f3aab07c1aa8a3ace6d3cc734b  (五)修改个人信息模块

这个模块在每个角色中都有这个功能,点击设置就会出现,此功能的弹框。那我们是怎么具体实现此模块的功能呢。

首先我们在登录的时候,就把所有的信息存储起来,把个人信息渲染到设置页面上,在个人信息页面上输入想要修改的信息,输入完成以后,点击修改,和数据接口本地端口号8081的数据接口进行数据交互,来使数据库里面的数据进行修改和更新。

图5.11修改个人信息界面

b40be03afbc3f58413f275767a92ea8d  (六)图书分类模块的实现

此模块是就专门针对超级管理员而言的,这个模块是通过操作数据库里面sort表格实现的,超级管理员有权利对该模块进行操作,点击相应的按钮,会进入对应的页面,在本页面点击删除按钮,此时会通过delect方法和http://localhost:8081/sorts/delect的接口进行数据交互,进行数据库删除。点击修改按钮,会进入到admUpdateSort.vue页面,把输入的信息完成以后,会和数据接口名为http://localhost:8081/sorts/update进行数据交互,来修改页面。添加的数据接口为http://localhost:8081/sorts/add。

图5.12图书分类模块流程图

44f13350b0b429b7f3018a0d802c031e  图5.13图书分类界面

4c80b6bddb2d35673f5d1db3697857c3  图5.14图书添加的页面

e28611dc4f98efa342251543dcf760ce  (七)图书统计模块的实现

此模块是针对管理员和超级管理员而言的,这个模块是查看图书的借阅书籍的信息和图书馆的借阅历史的。

此模块是不可以进行删除,修改等操作,这是为了留下借阅的历史信息。当管理员同意用户归还书籍以后,会把借书的时间,用户,书籍名字等信息记录在borrow表格里面。这时候前端,需向http://localhost:8081/borrows/findAll发送数据请求,进行前端页面数据的渲染。

图5.15归还书籍信息统计页面

861f487d1afa1d77c9206ecca56257ae  图5.16图书借阅书籍信息界面

a5c80d1566140b9011a70048da289195  (八)图书管理信息模块的实现

此模块主要是针对管理员而设计的,在图书管理信息系统中,此模块的设计是非常重要的,能够统计图书的数量,对图书进行增删改查操作。

图书的信息是存在数据库Books表中,当点击删除按钮,此时会对数据接口为http://loclhost:8081/books/delect发出删除信息的请求,当点击修改信息时,会跳转到带有点击行的信息的页面,进行修改,修好内容以后,会对数据接口为http://localhost:8081/books/update的接口发出请求。添加的数据接口为http://localhost:8081/books/add。

图5.17图书管理信息模块流程图

614a0a006adeaa26af7101ec1eaae77a  图5.18增加图书界面

394a603620227a32c6b24369cf606c93  图5.19图书信息界面

a1da5b5fd2f34342baed4cb5a7007d58  (九)图书审核模块的实现

此模块用来是用管理用户的申请的操作的,用户的借阅,还书,续借等功能都是需要管理员通过来进行的,这样更能对图书的信息有个更好的管理和了解。

这个功能的实现,必须是在用户对图书的申请下而完成的,只有申请了某个操作,才能把信息传递到相对应的模块里面,分别有借阅审核,归还审核,续约审核,点击同意借阅,会向多个接口发送请求,判断该用户是否有没还的书籍,是否预期等违规条件来决定该用户是否有借书的资格。归还审核,判断用户是否预期来决定是否允许归还,此时,默认借书时长为1个月。续约审核是判断用户是否存在逾期的书籍没有归还,决定是否可以续约。

图5.20借阅审核界面

4a35a1feec0c2f6a50b1f490df463467  图5.21续借审核的界面

c7c0ef66f8867c66086e98ccb426004a  图5.22归还审核的管理

9a7016de7d879764d665c2553138938a  (十)借书还书模块的实现

模块是针对与用户而言的,但是需要本模块具体的实现,是需要结合管理员的同意,才能真正实现本模块,这里,只阐述对于用户是如何的操作。

用户可以向管理员申请借书,还书,续借。在查看书籍的界面,有相应的操作按钮,点击按钮,把相应的信息传递到管理员的图书审核模块里面。在点击借阅按钮以后,系统会先判断,自己是否借书的数量达到上线,每人最多能够借10本书,如果达到,则不允许借书,在可以借书的情况下,系统会经过会把申请提交到管理员那里。预约书籍是了解图书馆是否还有书,可供借阅。还书是也是经过多次判断接口数据请求将数据传递到管理员的审核模块里面。

图5.23图书信息界面

bfe35bc3b7b89275ca2b49938c5ff62f  (十一)分页的实现

分页的实现,能够更加方便人们查阅信息,能够提升用户体验,如果在信息很多的情况下,在一个页面把所有信息显示出来,这样会篇幅会很长,使用户看起来吃力。可以提高页面的加载速度。那么本系统是怎么实现呢?

因为前端需要给后端传递Pagesize,代表每页多少条,Pagenum代表第几页,点击第几页,数据库会通过前端所传递的参数,在数据库里进行查询。

图5.24分页界面

5f25616b09c414e73bbaada4e488e6f3  (十二)本章小结

系统实现是系统设计中的最重要的一步,本章节主要论述了系统实现的具体过程。主要从登录,注册,员工管理,图书分类,图书添加,借书还书等方面具体说明了系统实现的步骤。

 六、系统测试

  (一)系统测试方法及环境

软件测试是系统设计完成以后而进行的一步工作,他是通过人工或者是其他手段来对软件进行测试的过程。软件测试是程序开发中的重要阶段,也是最后一个阶段,在这个阶段里面我们可以及时发现软件的问题,并且提出解决方案,以提高软件产品的使用质量。系统测试主要分为白盒测试和黑盒测试,以及灰盒测试[15]。

白盒测试是基于代码结构的软件系统检测,也被叫做结构软件测试。就是针对于研发者而言的。研发人员一般通过查看程序的源码,或者在代码编辑器中的调试来确定软件是否合格。通俗来说,就是凭借经验,看看程序中有没有出现错误或者找出程序中不符合要求的地方。主要是针对代码而言的。

灰盒测试一般用于集成测试阶段,他既关注了程序信息的内容,也关注程序的逻辑结构。它是处于两者之间的一个测试。

黑盒测试又被称为功能测试,用来检测每个功能是否能够运行。它不需要了解代码,是通过查看系统的功能是否完好,输出的数据和输入的数据是否准确来测试的。黑河测试负责的是用户的体验。

为了使用户更好的使用,软件运行更加稳定,所以本系统使用的是黑盒测试,他也是现在一种比较常见的测试方法。主要是检查下面这几个方向:

(1)接口检查:数据接口是否稳定,内容是否正确。

(2)性能检查:检查系统运行是否流畅。

(3)功能检查:每个功能是否能够正常使用,系统是否有缺少的功能。

(4)数据检查:检查数据信息是否出现错误。

  (二)登录测试

登录测试测试的是,当信息输入错误时,是否会给出信息输入不正确的弹框。当账号或密码输入错误时,击登录按钮,系统会给用户提示账号或者密码不正确。当验证码输入不正确时,系统会提示,验证码输入不正确。

图6.1登录测试界面

520cb8921180a63c7f7112dd3aa70c93  当登录信息输入正确时,并且自己身份填写正确时,系统是否会给出登录成功的提示。进入相对应的页面。测试结果时,当信息用户信息填写正确时,会有登录成功的消息提醒。

图6.2登录测试界面

6781c691824521ce1d8f6569686fa1c9  (三)图书管理测试

图书管理测试主要是测试,添加图书时,当添加的图书信息不完整时,系统是否会给出一些相应的提示。当添加的内容一些没有输入时,点击按钮,会提示,请输入书名,请输入作者等信息,测试结果如下图。

图6.3书添加为空测试图

70d581a62cfebedfefa12fa23f620b7d  当增加图书信息输入完整时是否会给出添加成功的提醒,并且是否会把添加的数据添加到数据库里面。

图6.4图书信息添加完整测试图

02ce67bf10f7eeebb5ad1516d3411a03  (四)部分功能的测试

由于测试的部分过多,所以现在把测试的模块和结果用表格的形式的进行汇总,如下表格:

3f37f23c9d135e06b103c2cd095f72d0

3405fb128bb2a0bd8051470d10fa1f99

 (五)系统运行情况

系统的运行情况主要是看,系统的性能是否满足,功能等方面是否能正常使用。通过对图书管理信息系统的不断检验,并且进行了多次完善,预期的功能已经基本完成,所需要的功能也可以正常运行,能够满足用户的基本需求。

七、总结

通过这次的毕业设计,让我感受到艰辛的同时又感受到了快乐。

本次设计的是一个图书管理信息系统,使用的前后端分离模式完成设计的。页面的设计使用的使Vue框架,后端是Java语言,数据的交互使用的是vue-router。在进行系统分析时,自己的考虑不是那么的全面,还有一些功能尚未实现,如:修改头像,聊天等功能。所以系统还是有很大的上升空间。

在整个开发的过程中真实的感受到了设计开发的艰辛,同时也有了经验和感受。在开发的过程中会不断的报错,所以自己要有足够的耐心去找问题的所在,在找不到的情况下,自己要学会用百度,从前人的经验找到问题的答案。我们也要足够的细心,只要足够的细心就成功了一半。不要因为自己的粗心,浪费了自己很长时间。

在这次设计中,在自己的专业知识上有了很大收获。如对于Java语言有了进一步的认识。从最基础的语法,数据类型。到一步一步实现增删改查,到最后面的java语言如何与数据库连接。了解到了关于Java语言的开发框架,如何更快速的实现数据的接口。这个过程都是非常漫长且神奇的一个过程。当快速的写出接口,自己感觉是非常神奇的。也正说明了,自己所学习到的知识真的远远不够。因为自己所开发的框架是mvvm形式的,所以自己对于前端也有了更深的了解,它不只是一个简单的页面,也要与数据进行交互,而且也有自己的逻辑,比如在做登录的时候,就感觉到了前端也是需要写逻辑的。还有就是各个页面之间的关系,要把他们进行正确的跳转。因为此次采用的是Vue,所以对Vue也有了更深的了解。学习到了如何获取后端的数据,要把正确的数据接口写在正确的位置上。

在进行增删改查,灵活运用element-ui的各种组件,把官方的东西变成自己想要的东西。同时也了解到了阅读文档的重要性,在使用组件时,我们也要细心的阅读文档,文档里面告诉我们如何正确并且有许多的内置方法,更能节省我们的时间。

在这次设计中,深刻的感受到了,自己的不足,比如不够细心,没有耐心等等。自己所需要学习的东西还有很多,现在所学习的知识远远不够,所以自己在今后的人生路上,要不断的学习,不断的进步,不断地充实自己。总的来说这次的设计与实现,对我以后的工作和生活和有很大的帮助,让我收获到了很多财富,使我受益终身。

 参考文献

[1]冷珠草.管理信息系统有效提高图书档案管理的策略[J].办公自动化,2023,28(02):50-52.

[2]曾姗.“面向对象分析与设计”课程教学改革[J].黑龙江教育(理论与实践),2022,(07):63-65.

[3]尹慧,段华琼.基于C语言的图书管理系统的设计与实现[J].信息与电脑(理论版),2021,33(23):116-118.

[4]董德生.数据挖掘技术在软件工程中的应用[J].信息记录材料,2021,22(12):165-167.

[5]叶淑然.图书管理信息系统的设计与实现[J].电子技术与软件工程,2021,(16):182-183.

[6]陆旸.GIS系统的原理及其在图书管理中的应用实践[J].信息记录材料,2021,22(03):100-102.

[7]王乐球.金课标准下程序设计课程改革探究[J].软件导刊,2020,19(12):213-216.

[8]杨伟超,徐萍,徐震,赵毅.科普书屋可视化网络管理信息系统设计与实现[J].信息技术与信息化,2020,(10):67-70.

[9]赵文婷.图书管理信息系统的设计与实现[J].中国信息化,2020,(10):87-88.

[10]胡谦锋,陈沁磊.基于RFID技术的图书质量监控信息系统研究[J].计算技术与自动化,2020,39(03):97-101.

[11]杨玲.图书馆管理信息系统需求分析及系统架构设计[J].文化产业,2020,(23):137-138.

[12]王冬芝.图书管理信息系统在图书管理中的优势与应用策略研究[J].中国管理信息化,2020,23(10):190-191.

[13]胡正雨,刘文锐.基于Delphi与Access的图书管理信息系统研究[J].信息记录材料,2020,21(05):89-90.

[14]胡正雨,刘文锐.基于Agent的图书管理信息系统的功能研究[J].信息记录材料,2020,21(04):161-162.

[15]朱吉松.浅析图书管理信息系统的建立与完善[J].办公室业务,2018,(18):69-70.

 致谢

本文是在我指导老师的悉心指导下完成的。老师严谨的治学态度和科学的工作方法给了我极大的帮助和影响。同时,对我的论文工作也提出了许多宝贵的意见,在此表示衷心的感谢!

另外,也感谢我的家人和朋友,他们的理解与支持使我能够顺利完成了我的学业!

图书管理信息系统

图书管理信息系统

价格 ¥9.90 发布时间 2024年3月25日
已付费?登录刷新
下载提示:

1、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“文章版权申述”(推荐),也可以打举报电话:18735597641(电话支持时间:9:00-18:30)。

2、网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。

3、本站所有内容均由合作方或网友投稿,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务。

原创文章,作者:1158,如若转载,请注明出处:https://www.447766.cn/chachong/205091.html,

Like (0)
1158的头像1158编辑
Previous 2024年3月25日
Next 2024年3月25日

相关推荐

My title page contents