摘 要
对图书管理的流程进行科学整理、归纳和功能的精简,通过软件工程的研究方法,结合当下流行的互联网技术,最终设计并实现了一个简单、易操作的图书管理小程序。内容包括系统的设计思路、系统模块和实现方法。系统使用过程主要涉及到管理员和用户两种角色,主要包含个人信息修改,用户管理、图书分类管理、图书信息管理、我的待还管理、图书归还管理、催还提醒管理、系统管理等功能。
系统开发主要在 Windows 系统下进行,采用支持跨平台的java语言开发完成,因此可以运行在任意开发环境下。系统采用mysql数据库和B/S结构的方式,按照ssm框架进行开发。
关键词:图书; B/S结构; MySQL
Abstract
The library management process is scientifically sorted out, summarized and simplified. Through the research method of software engineering, combined with the current popular Internet technology, the final design and implementation of a simple and easy to operate small library management program. The content includes the system design idea, the system module and the realization method. The system use process mainly involves the administrator and the user two roles, mainly includes personal information modification, user management, book classification management, book information management, my waiting management, book return management, urge also remind management, system management and other functions.
System development is mainly carried out under Windows system, using java language which supports cross-platform development, so it can be run in any development environment. The system adopts mysql database and B/S structure, and is developed according to ssm framework.
Key words: books; B/S structure; MySQL
目 录
第一章 绪 论 1
1.1论文背景 1
1.2系统研究现状 1
1.3 研究意义 2
第二章 开发工具和开发技术 3
2.1微信公众号开发技术 3
2.2 其他相关技术 3
2.2.1 Java语言 3
2.2.2 ssm框架 3
2.2.3 MySQL 介绍 4
2.2.4 B/S架构 4
第三章 需求分析 5
3.1 需求描述 5
3.2 系统角色需求分析 5
3.3 系统功能需求分析 5
3.4 非功能性需求分析 7
3.4.1 先进性 7
3.4.2 安全性 7
3.4.3 易用性 7
3.4.4 可扩展性 8
3.4.5 可修改性 8
3.5 系统流程分析 8
3.5.1 登录流程 8
3.5.2 添加信息流程 8
3.5.3 删除流程 9
3.6 本章小结 10
第四章 系统设计 11
4.1 系统总体设计 11
4.2 数据库设计 11
4.2.1 数据库逻辑设计 12
4.2.2 数据库表设计 13
4.3 本章小结 19
第五章 详细设计与实现 20
5.1系统前台功能的实现 20
5.1.1登录界面的实现 20
5.1.2注册界面的实现 20
5.1.3小程序首页功能的实现 21
5.1.4用户功能 22
5.2系统后台管理员功能的实现 22
5.3 本章小结 27
第六章 系统测试 28
6.1 测试目的 28
6.2 测试用例 28
6.3 本章小结 29
结 论 30
参考文献 31
致 谢 32
第一章 绪 论
1.1论文背景
近年来互联网技术飞速发展,给人们的生活带来了极大便利,也改变人们的生活生产方式,互联网拥有存储量大、可靠性高、使用方便等不可替代的优点,也正在逐步取代传统的信息管理模式[1]。由代码编程实现的各种管理工具和系统替代传统的人工操作,不但提升了可靠性还降低了人力成本,节省了时间,提升了工作效率。全球视域下信息技术逐步渗透到各个领域,多样化的数据信息为图书管理带来了深刻变革,打破了传统的方式与载体,图书管理的事务性工作面临新形势和新挑战[2]。
计算机技术快速发展的同时也促进信息化发展。知识承担着培养人才、科学研究和服务社会的重大责任,当下图书馆规模不断扩大,新型管理模式也正逐步推进,推动其信息化发展可以为其改革、进步提供保障。信息技术在教育中的应用已经成为教育改革的必然方向,管理人员应该抓住时代的机遇,与时俱进[3]。通过这种方式可以提升图书管理工作的效率,促进教学新举措的实施,加速教育改革进程,改善管理服务能力。
基于微信小程序的图书管理系统作为信息化建设的重要一环,图书管理系统的开发与实现,能够使管理工作开展得更加有序。
1.2系统研究现状
我国信息技术虽然起步较晚,但发展速度迅猛,如今已经跻身世界信息大国的行列。现在我们的生活离不开信息技术,人们可以利用计算机、互联网进行网上购物、视频学习、互动交流,信息技术已经渗透到我们的生活中,随着计算机技术、网络技术的迅速发展,研究并实现图书管理系统是现代理论和科学技术相结合的产物[4]。国内信息化发展趋势越来越快,我国信息化建设也随之迅速发展,通过信息系统对大量复杂数据进行管理代替传统人工管理,很大程度的提升管理效率。目前图书管理系统基本实现了应用网络进行管理,使用各种技术、实现各种不同附加功能的图书数量众多。但随着近年来互联网技术的不断完善和更新,一些不适应当代信息化发展的技术正在被淘汰,而采用老旧技术实现的系统将出现维护困难的境况。因此符合现在社会发展的系统开发十分必要,图书管理系统的设计和开发仍然有很大的进步空间。
国外部分发达国家的信息技术起步较早,以技术为基础引领的各行各业的变革产生时间也较早。信息化的理念由世界知名的高校美国麻省理工学院提出,接下来的三四十年随着网络技术的飞速发展,终于在全美形成了一系列非常完善成熟的信息化管理平台,自此美国国内大部分已实现信息化管理[5]。虽然存在教育制度存在不同,但由于美国实行信息化管理的起步时间早,积累经验多,有关基于微信小程序的图书管理系统的研究技术经验仍然值得我们学习。
1.3 研究意义
图书管理行业对互联网的运用正经历着质变,从技术支撑者的技术建构与技术运用转向以教育问题和产业需要为起点,通过重新构建教育与基于微信小程序的图书管理系统,实现制度上的发展变革[7]。本文将设计一个根据整理、归纳后进行精简的图书管理系统。使用采取稳定、可靠且易于维护的开发技术进行系统的实现。系统可以直观、高效、便捷地实现高校对各个图书信息进行管理,使工作人员有针对地安排和管理图书信息,建立统一的基于微信小程序的图书管理系统。
第二章 开发工具和开发技术
2.1微信公众号开发技术
微信公众平台是一个开放的平台,在成功注册公众号后,需要填写服务器地址(URL)、Token值和消息加密密匙(EncodingAESKey),其中服务器地址是开发者用来接收微信消息和事件的接口URL。开发者可以任意填写Token值用作生成签名,该Token值会和接口URL中包含的Token值进行比对,从而验证安全性。消息加密密匙由开发者手动填写或随机生成,将用作消息体加解密密钥。有明文模式、兼容模式和安全模式三种消息加密方式。模式的选择与服务器配置在提交后均会立即生效。开发者提交信息后,微信服务器将发送GET请求到填写的服务器地址上,同时携带四个参数signature、timestamp、nonce和echostr[5]。开发者通过检验signature对请求进行校验,再将Token、timestamp和nonce三个参数进行字典序排序,又将三个参数字符串拼接成一个字符串进行shal加密,最后开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。成为开发者后,即可选择编辑模式或者开发模式对平台进行开发。开启编辑模式只实现公众平台中基本的自动回复等功能,按照编辑页面上引导的步骤就可完成平台的初步建设。开启开发模式即可获得接口权限,在平台中开发实现更多功能[6]。在开发模式下,以获得接口权限为基础,再通过绑定相关服务器地址(URL)和Token值、编辑相关的程序代码,以实现更高级的功能。
2.2 其他相关技术
本系统在后台使用Java语言实现跨平台的处理,以B/S的结构方式以及ssm框架进行开发,数据库使用MySQL。
2.2.1 Java语言
Java 语言是一门受众很广的语言,来自Sun Microsystems公司,Java可运行在很多平台,相较于C++语言,不仅吸收了C++很多优点,还摈弃了里面许多晦涩难懂的概念,Java的优点很多,可面向对象开发,平台多样性以及可移植性很高,目前市面上很多大型网站项目都使用Java编写,由此可知Java的受欢迎程度很高。
2.2.2 ssm框架
SSM(Spring+SpringMVC+MyBatis)框架是一个集群框架,本质上是Spring和MyBatis两个开源框架的集成框架。如今,许多成熟的组织都在使用它,Java是员工最常用和最希望使用的技术。所谓的Spring框架就像胶水一样的存在,一般情况下需要new一个对象使用。SpringMVC是Spring中一个特殊的存在,它可以在项目中拦截用户的请求,Servlet的主要任务是承担中介。MyBatis是一个对接数据库的框架。JDBC的封装使得原本复杂混乱的数据库底层操作看起来更加透明。
2.2.3 MySQL 介绍
在软件项目,通过经营性数据的数据库,可以保证其安全,独立和数据一致,访问数据的系统来提供,所以有效减少时间程序员开发应用程序。
MySQL可以支持多线程,可以方便使用系统的资源,提高运行的速度。并提供odbc、jdbc和tcp/ ip,以各种形式连接到MySQL; 功能方面表现欠缺,规模小,但对于这个系统就足够了。
因为MySQL是源代码对外开放的,所以任何人都可以通过相应的方法下载,并根据个性化需求进行修改。 由于MySQL的速度,可靠性和适应性,MySQL受到重视。
MySQL虽然功能可能不是很强大,但由于其开源,广泛传播,导致很多人都意识到这个数据库。
2.2.4 B/S架构
B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作[10]。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间[12]。
低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少[13]。
第三章 需求分析
在软件的命周期中,需求分析是其中关键的一环。需求分析过程中不仅要对系统应该实现的功能提出准确和完善的请求,还要考虑需求的可行性。需求分析对设计和实现一个系统具有决定性的重大意义[11]。只有充分完整的需求分析才能为后续的系统开发过程和实现成果奠定基础。
3.1 需求描述
根据日常实际需要,一方面需要在系统中实现基础信息的管理,同时还需要结合实际情况的需要,提供图书信息管理功能,方便图书管理工作的展开,综合考虑,本套系统应该满足如下要求:
首先,在系统中需要实现对基础信息,包括个人信息修改、用户管理、图书分类管理、图书信息管理、我的待还管理、图书归还管理、催还提醒管理、系统管理等功能的管理,这些是系统的基础信息,和系统中其他内容密切相关。
然后,系统中需要实现对用户信息的管理,允许管理员对用户进行必要的设置,同时要避免管理员对个人信息进行操作,保障用户的信息安全。
3.2 系统角色需求分析
综合图书管理经历和对网上信息归纳整理的结果,在实际应用中,将用户分为两种:管理员和用户两个角色。其中用户可以操作的内容是有限的,管理员可以进行的操作最多。了解系统用户的分类以及可以进行的操作,对于接下来实现相关的功能具有重要的意义。
3.3 系统功能需求分析
(1)系统的通用功能包括用户登录和密码修改,是两个角色共同需要使用的功能,用例分析如图3-1所示。
图3-1 系统通用功能用例分析图
(2)管理员可以对个人中心、用户管理、图书分类管理、图书信息管理、我的待还管理、图书归还管理、催还提醒管理、系统管理等进行基本的信息管理。其用例分析如图3-2所示。
图3-2 管理员用例图
(3)用户可以对个人中心、我的待还、图书归还、催还提醒、我的收藏管理、意见反馈等进行操作,用户用例分析如图3-3所示。
图3-3 用户用例图
3.4 非功能性需求分析
在系统的需求分析中除了保证系统功能需求分析准确完整,还应考虑与其相辅相成的各种其他因素,这样才能确保系统后续设计能够更加完善、清晰,确保系统实现后的有较高的使用价值。
3.4.1 先进性
为保证系统的先进性开发过程中应尽量使用先进的软件开发技术、设计方法、体系架构,符合当下的应用需求和保证性能可靠。
3.4.2 安全性
本系统中涉及两种用户角色,根据用户角色类型合理划分其页面访问权限。系统允许管理员对用户进行必要的设置,同时要避免管理员对个人重要信息进行操作,保障用户的信息安全。
3.4.3 易用性
系统使用方便、界面友好是提高用户使用体验的重要因素。系统实现其主体功能同时,界面设计要简洁大方、使用方便、美观清晰。系统的每一项反馈都要逻辑严密,弹窗信息也是简洁明了[12]。
3.4.4 可扩展性
可扩展性要求软件的设计要留有可升级接口和升级空间,便于今后根据新的模式需求进行功能的拓展。
3.4.5 可修改性
可修改性要求使用科学的方法设计软件,形成良好的结构和完备的文档[13]。它的前提要保证系统设计逻辑清晰,软件结构简单明了,代码编写过程中有良好的注释习惯,便于后续对系统性能进行调整。
3.5 系统流程分析
3.5.1 登录流程
每个用户都有专属的密码和账号,在输入合法的账号和密码之后即可进入系统。登录流程如图3-4所示:
图3-4 登录流程图
3.5.2 添加信息流程
管理层人员有添加信息功能。添加信息流程如图3-5所示:
图3-5 添加信息流程图
3.5.3 删除流程
用户可以选择把自己发布的信息删掉,选择要删除的信息确认之后,删除信息的操作就完成了。删除信息流程图如图3-6所示。
图3-6 删除信息流程图
3.6 本章小结
本章首先对整个系统进行了详细的需求描述,然后按照这些要求对系统的角色和功能进行了详细的分析,并对这些要求进行了详细的说明。同时为保证需求分析的全面性,还对系统的一些非功能性需求进行描述和对系统流程进行分析,为以后的系统的开发提供了一个比较完善的参考依据。
第四章 系统设计
4.1 系统总体设计
基于微信小程序的图书管理系统的建设可以为图书管理提供帮助,通过对一些基础信息管理实现针对性的安排,可以按照用户的角色权限使不同用户角色看到不一样的信息界面。现根据需求阶段的分析,我们可以大致确定系统需要包含的功能如下图所示:
系统总体结构图如下,见图4-1所示。
图4-1 系统总体结构图
4.2 数据库设计
数据库能直观反映表现系统的需求,数据库的设计能否切实符合系统的需求关系到整个系统最终的呈现结果。通过之前的分析梳理,明确了系统中需要包含的功能和要求。系统中除了涉及对数据库的增加、删除、查寻、修改的基础操作较多,还要理清实体间的对应关系,据此完成表结构的设计与实现。
4.2.1 数据库逻辑设计
为了更直观阐明数据库的设计,使用 Vision 绘制的基于微信小程序的图书数据模型E-R实体属性图。根据系统需求设计了以下几个主要实体。
图书信息实体属性图,如图4-2所示。
图4-2图书信息实体属性图
图书归还实体属性图,如图4-3所示。
图4-3图书归还实体属性图
催还提醒实体属性图,如图4-4所示。
图4-4催还提醒实体属性图
系统E-R图如4-5所示。
图4-5系统E-R图
4.2.2 数据库表设计
在关系数据E-R图中,分析并创建数据表,数据表用来记录信息,数据表关系由多个数据表组成,下面介绍的是数据表各个字段信息如下表所示。
表4-1:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-2:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 varchar 200 图片1
picture2 varchar 200 图片2
picture3 varchar 200 图片3
表4-3:图书信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
tushubianhao varchar 200 图书编号
tushumingcheng varchar 200 图书名称
tushufenlei varchar 200 图书分类
fengmian varchar 200 封面
zuozhe varchar 200 作者
chubanshe varchar 200 出版社
shuliang int 数量
tushufujian varchar 200 图书附件
xiangqing longtext 4294967295 详情
thumbsupnum int 赞 0
crazilynum int 踩 0
clicktime datetime 最近点击时间
clicknum int 点击次数 0
表4-4:图书归还
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
guihaidanhao varchar 200 归还单号
tushubianhao varchar 200 图书编号
tushumingcheng varchar 200 图书名称
tushufenlei varchar 200 图书分类
fengmian varchar 200 封面
zuozhe varchar 200 作者
shuliang int 数量
yinghairiqi date 应还日期
guihairiqi date 归还日期
zhanghao varchar 200 账号
xingming varchar 200 姓名
shouji varchar 200 手机
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
userid bigint 用户id
表4-5:图书分类
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
tushufenlei varchar 200 图书分类
表4-6:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP
表4-7:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture varchar 200 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注
表4-8:系统公告
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture varchar 200 图片
content longtext 4294967295 内容
表4-9:图书信息评论表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
avatarurl varchar 200 头像
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容
表4-10:催还提醒
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhanghao varchar 200 账号
xingming varchar 200 姓名
cuihaishuji varchar 200 催还书籍
tixingneirong longtext 4294967295 提醒内容
tixingshijian datetime 提醒时间
userid bigint 用户id
表4-11:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhanghao varchar 200 账号
xingming varchar 200 姓名
mima varchar 200 密码
xingbie varchar 200 性别
nianling int 年龄
shouji varchar 200 手机
表4-12:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-13:我的待还
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
jieyuebianhao varchar 200 借阅编号
tushubianhao varchar 200 图书编号
tushumingcheng varchar 200 图书名称
tushufenlei varchar 200 图书分类
fengmian varchar 200 封面
zuozhe varchar 200 作者
shuliang int 数量
jieyueriqi date 借阅日期
jieyuetianshu int 借阅天数
yinghairiqi date 应还日期
beizhu longtext 4294967295 备注
zhanghao varchar 200 账号
xingming varchar 200 姓名
shouji varchar 200 手机
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
userid bigint 用户id
表4-14:意见反馈
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
adminid bigint 管理员id
ask longtext 4294967295 提问
reply longtext 4294967295 回复
isreply int 是否回复
4.3 本章小结
这一章着重介绍了整个系统的设计流程。确定了系统的功能结构,并在此基础上完成了数据库的设计。
第五章 详细设计与实现
5.1系统前台功能的实现
5.1.1登录界面的实现
首先双击打开微信小程序客户端系统,连上网络之后会显示出本系统的登录界面,这是进入小程序的第初始页面“登录”,能成功进入到该登录界面则代表小程序的开启是成功的,接下来就可以操作本系统所带有的其他所有的功能。
登录界面如图5-1所示。
图5-1 登录界面
5.1.2注册界面的实现
第一次使用本小程序的使用者,首先是要进行注册,点击“注册”,然后就会进入到注册的页面里面,将用户信息录入注册表,确认信息正确后,系统才会进入登录界面,用户登录成功后可使用本小程序所提供的所有功能。
注册界面如图5-2所示。
图5-2 注册界面
5.1.3小程序首页功能的实现
小程序首页是用户注册登录后进入的第一个界面,在这里,人们能够看到小程序的导航条,内容包括首页、图书信息、系统公告、我的等。系统首页界面如图5-3所示。
图5-3 小程序首页界面图
图书信息:在图书信息界面可以查看到图书名称、图书编号、封面、图书分类、作者、出版社、数量、图书附件、点击次数、详情等信息,按照提示即可完成借阅、归还、评论或收藏操作。图书信息详情如图5-4所示。
图5-4图书信息详情界面图
5.1.4用户功能
用户登录成功后,点击“我的”进入我的页面,在我的页面可以对个人中心、我的待还、图书归还、催还提醒、我的收藏管理、意见反馈等进行详细操作。用户功能界面如图5-5所示。
图5-5用户功能界面图
5.2系统后台管理员功能的实现
管理员登录,通过填写账号和密码等信息进行登录操作,如图5-6所示。
图5-6管理员登录界面图
管理员登录进入小程序可以查看个人中心、用户管理、图书分类管理、图书信息管理、我的待还管理、图书归还管理、催还提醒管理、系统管理等功能进行详细操作,如图5-7所示。
图5-7管理员功能界面图
用户管理;在用户页面输入账号和姓名进行查询,新增或删除用户列表,并对用户信息进行查看详情,修改和删除操作;如图5-8所示。
图5-8用户管理界面图
图书分类管理;在图书分类页面输入图书分类信息进行查询,新增或删除图书分类列表,并对图书分类信息进行查看详情,修改和删除操作;如图5-9所示。
图5-9图书分类管理界面图
图书信息管理;在图书信息页面输入图书名称、作者和选择图书分类进行查询,新增或删除图书信息列表,并对图书信息进行查看详情、修改、查看评论或删除操作;如图5-10所示。
图5-10图书信息管理界面图
我的待还管理;在我的待还页面输入借阅编号、图书名称和选择是否通过进行查询或删除我的待还列表,并对我的待还信息进行查看详情、修改或删除操作;如图5-11所示。
图5-11我的待还管理界面图
图书归还管理;在图书归还页面输入图书名称、图书分类、账号和选择是否通过进行查询或删除图书归还列表,并对图书归还信息进行查看详情修改或删除操作;如图5-12所示。
图5-12图书归还管理界面图
催还提醒管理;在催还提醒页面输入姓名和催还书籍进行查询,新增或删除催还提醒列表,并对催还提醒信息进行查看详情、修改或删除操作;如图5-13所示。
图5-13催还提醒管理界面图
系统管理;在系统公告页面输入标题进行查询,新增或删除系统公告列表,并对系统公告信息进行查看详情、修改或删除操作;还可以对轮播图管理、意见反馈、关于我们进行查看详情或修改操作;如图5-14所示。
图5-14系统管理界面图
5.3 本章小结
本章主要基于前面系统设计的内容,详细介绍了管理员和用户两个角色对基于微信小程序的图书管理系统的主要功能界面进行详细介绍和展示。
第六章 系统测试
6.1 测试目的
在基于微信小程序的图书管理系统正式投入使用前,我们可以通过对图书管理系统的检测,找出其中的问题和不足,并对其进行进一步的修正与完善,从而提高系统的优化水平和整体性能。系统测试是软件开发的必经之路,为系统实现的完整性、系统性能的可靠性提供保障。系统测试主要包括两种方法,一种是检查软件的每一个功能是否能够正常使用的黑盒测试,另一种检测软件编码过程中错误的白盒测试。
首先,本系统采用了白盒测试技术,对代码中出现的问题进行了修正,提高了代码的准确度。由于黑盒测试中使用了大量的测试用例,以下将列举一些主要的黑盒测试用例。
6.2 测试用例
(1)登录测试
登录功能是用户进入系统的校验窗口,其中需要填写的信息包括用户账号和用户密码,下面将根据此功能设计具体测试用例来验证登录功能的实现与否。具体测试用例见表6-1。
表6-1 登录功能测试用例
用例序号 用例描述 测试步骤 期望输出 测试结果
Test_01 页面展示 浏览器输入登录地址 进入登录页面 成功
Test_02 账号非空检验 账号为空,点击“登录”按钮 提示“用户账号必须输入” 成功
Test_03 账号存在性检验 输入不存在的账号 提示“输入的账号不存在” 成功
Test_04 密码非空检验 输入正确的账号,密码为空 提示“用户密码必须输入” 成功
Test_05 密码正确性检验 输入正确的账号和不正确的密码 提示“输入的密码错误” 成功
Test_06 登录成功检验 输入正确的账号和密码 登录成功,进入首页 成功
(2)修改密码测试
更改密码功能需要用户输入原始密码、修改后的密码、修改后的确认密码,方可更换密码。具体测试用例见表6-2。
表6-2 修改密码测试用例
用例序号 用例描述 测试步骤 期望输出 测试结果
Test_01 页面跳转 点击“密码修改”按钮 进入密码修改页面 成功
Test_02 原始密码非空检验 原始密码为空,点击“提交”按钮 提示“原始密码必须输入” 成功
Test_03 原始密码正确性检验 输入错误原始密码 提示“原始密码输入错误” 成功
Test_04 修改密码非空检验 输入正确的原始密码,修改密码为空,点击“提交”按钮 提示“修改密码必须输入” 成功
Test_05 确认密码非空检验 输入正确的原始密码,修改密码非空,确认密码为空,点击“提交”按钮 提示“确认密码必须输入” 成功
Test_06 两次新密码输入一致性检验 输入正确的原始密码,修改密码非空,确认密码与修改密码不一致,点击“提交”按钮 提示“两次密码输入不一致” 成功
Test_07 修改成功检验 输入正确的原始密码,修改密码非空,确认密码与修改密码一致,点击“提交”按钮 提示“处理成功” 成功
6.3 本章小结
本章主要内容为系统测试,列举部分黑盒测试的测试用例。结果发现系统基本实现了设计需求的大部分功能,未发现系统运行过程中出现异常,数据加载和前台显示都符合最初设想,系统测试通过,基本实现初始的设计目的。
结 论
本文介绍了一个使用方便,界面清晰的基于微信小程序的图书的设计与实现。本系统已经实现了对个人中心、用户管理、图书分类管理、图书信息管理、我的待还管理、图书归还管理、催还提醒管理、系统管理等的综合管理,可以充分满足图书管理各方面的需求。系统为图书管理工作节省了精力和时间,简化了在管理过程中重要环节的管理难度,丰富了图书管信息化的建设,符合信息时代的发展趋势。存储在系统中的数据也将对未来图书管理制度的发展提供数据支撑。
本文实现的系统具有功能实用、界面简单清晰、操作简单、安全稳定的优点。在设计实现上本系统采用了java语言和ssm框架进行开发,提升了开发效率、同时也保障了后续维护,易于扩展。使用MySQL轻量级数据库大幅度提升查询性能。
该系统只考虑了一些简单的图书管理的基本构成,缺乏对设计的深入研究和思考。随着网络技术的迅猛发展和新型教学制度的逐步完善,不久将可以形成稳定优质的图书管理模式。这时对系统的要求也将越来越高,这要求我们不断探索新的需求,开发新的技术,与时俱进,实现更完善更智能的基于微信小程序的图书管理系统。
参考文献
[1]陆娇娇.基于微信小程序的教学资源平台建设[J]. 三亚学院信息与智能工程学院2021,17(03):46-47
[2] 李洲,张萌. 微信小程序的设计与制作研究——以“电液伺服控制技术”课程学习为例[J].电子技术与软件工程, 中国地质大学(武汉)机械与电子信息学院 2021,5(04)
[3] 李明,王伟,张栋栋.传统架构升级微服务的设计与实现[J].科技传播,2019,11(10):140-142.
[4] 邓熊娜,赵剑冬,黄鹏,陈丹妮. 基于项目驱动的DACUM模型微信小程序开发课程开发研究[J].广东技术师范大学计算机科学学院, 2021,(07).
[5] 方捷. 基于微服务的智慧健康服务平台的设计与实现[D].合肥:安徽大学,2020.
[6] 潘小玲.微服务架构在软件项目开发的主要问题与应对研究[J].电脑编程技巧与维护,2021(06):85-86+91.
[7] 齐善鲁,马徳俊,梁雪.基于SpringBoot的开放式软件开发案例教学平台设计[j].烟台大学计算机与控制工程学院,2021,17(28)
[8] 马芯.基于微信平台的4S店智能管理系统的设计与实现[J].大连海事大学2021(01)
[9] 于晓虹.微服务架构在分布式系统的设计和应用[J].电子技术与软件工程,2021(06):28-29.
[10] 邢贞明,李登辉,潘博.微服务架构与容器技术探析[J].金融科技时代,2021(02):66-69.
[11] 吴文峻,于鑫,蒲彦均,等.微服务时代的复杂服务软件开发[J].计算机科学,2020,47(12):11-17.
[12] 胡如乐,张亮,张倩,等.基于微服务基础组件的前端开发技术应用研究[J].电子测试,2020(20):84-86.
[13 梁光瑞,魏国,杨光.微服务架构与容器技术的应用集成实践[J].科技创新与应用,2020(19):166-167.
[14] 王亚军.微服务架构在容器中的应用实践[J].数字技术与应用,2020,38(01):75-76.
[15] 姚刚,蔡凤翔,李英浩.浅谈微服务架构的网站开发技术[J].信息系统工程,2019(12):69-70.
致 谢
首先感谢我的母校对我的培养!
回首四年大学时光,在校园中首先要感谢我的老师们。他们有的风趣幽默、有的严肃认真;有的擅长研究,经常给我们发一些专业相关的文章和好的项目例子,融会贯通,结合自己的实际开发经验授课;有的讲课内容深入浅出,精心研究课程讲解的顺序安排,把抽象和复杂的知识讲解的清晰明了,让我能够紧跟课堂的内容。他们的共同点是都认真负责,除了传授知识还关注我们思想上的问题,言传身教。我常常感受到他们对国家、对专业的热爱还有对社会的责任意识。同时还常常关心我们的未来,课余时间经常跟我们进行交流,乐于分享自己的看法经验。因此在大学四年的学习生活中,虽然没有做到希望中的成为一个精通专业知识的优秀开发者,但是也对筑牢我的计算机基础起到十分重要的影响。在这里特别要向我的论文指导老师提出感谢!不但使我对数据库知识的认识更加全面深入,尤其在最后的课程设计阶段给与我作品鼓励和支持,让我一直铭记在心,坚定了我在这条路上走下去的信心。同时在此次毕业设计和论文撰写中也对我进行悉心指导和帮助。
最后感谢还要家人对我的支持和有朋友对我的鼓励帮助。感谢挚友长久以来对我的陪伴和关心,希望我们未来能够在各自的道路上找到自己的热爱,一直都有目标有希望有彼此的陪伴和支持。知易行难,计算机是一门注重实践的学科,我知道自己在实践动手方面做的远远不够,希望未来自己能够更多地锻炼。