springboot基于java的畅销图书推荐系统

摘 要

二十一世纪我们的社会进入了信息时代,信息管理系统的建立,大大提高了人们信息化水平。传统的管理方式对时间、地点的限制太多,而在线管理系统刚好能满足这些需求,在线管理系统突破了传统管理方式的局限性。于是本文针对这一需求设计并实现了一个基于springboot畅销图书推荐系统,为了简捷并有效的解决购买图书各方面的问题。
本文讲述了畅销图书推荐系统。结合电子管理系统的特点,分析了畅销图书推荐系统的背景,给出了畅销图书推荐系统实现的设计方案。
本论文主要完成不同用户的权限划分,不同用户具有不同权限的操作功能,在用户模块,主要有用户进行注册和登录,用户可以实现查看图书信息、热销图书、新书资讯,还能修改个人信息等;在管理员模块,管理员可以对用户、图书信息、热销图书、系统和订单等进行相应的操作。
关键词:畅销图书推荐系统;springboot框架 ;

Abstract
In the 21st century, our society has entered the information age. The establishment of information management system has greatly improved people’s information level. The traditional management mode has too many restrictions on time and place, and the online management system can just meet these requirements. The online management system breaks through the limitations of the traditional management mode. So this paper designs and implements a best-selling book recommendation system based on spring boot for this requirement, in order to solve the problems of purchasing books in a simple and effective way.
This article describes the best-selling book recommendation system. Based on the characteristics of the electronic management system, this paper analyzes the background of the best-selling book recommendation system, and gives the design scheme for the implementation of the best-selling book recommendation system.
This paper mainly completes the division of permissions for different users. Different users have different operation functions. In the user module, users can register and log in. Users can view book information, hot books, new book information, and modify personal information; In the administrator module, the administrator can perform corresponding operations on users, book information, hot books, systems and orders.
Key words: best-selling book recommendation system; Spring boot framework

目 录

摘 要 I
Abstract II
1绪 论 1
1.1 课题背景 1
1.2 选题的目的与意义 1
1.3 初步设计方法与实施方案 2
1.4 本文研究内容 2
2 关键技术介绍 3
2.1 Java语言 3
2.2 Vue简介 4
2.3 MySQL数据库 4
2.4 Spring Boot框架 5
3 系统分析 6
3.1可行性分析 6
3.1.1系统可行性分析 7
3.1.2技术可行性分析 7
3.1.3 操作可行性分析 7
3.1.4运营可行性 8
3.1.5法律可行性 8
3.2 需求分析 9
3.3系统用例图 9
3.4系统流程的分析 9
3.4.1 用户管理的流程 10
3.4.2 个人中心管理流程 10
3.4.3 登录流程 11
4系统设计 11
4.1 软件功能模块设计 12
4.2 数据库设计 13
4.2.1 概念模型设计 13
4.2.2 数据表 14
5 系统功能实现 15
5.1前台用户模块实现 19
5.2后台管理员模块实现 24
6系统测试 31
6.1系统测试结论 31
结 论 32
致 谢 33
参考文献 34

1绪 论

1.1 课题背景
21世纪以来,随着科学技术的飞速发展,人们对信息的要求越来越高,于是传统的信息技术越来越难以满足人们的要求。畅销图书推荐系统通过计算机技术进行信息管理,完善平台与用户之间的关系,有助于提高工作效率,实现信息化管理[1]。此次设计的系统不仅利于管理员总体负责整体系统的运行维护,统筹协调,同时也方便用户随时查询图书信息、热销图书、新书资讯等,畅销图书推荐系统的开发很好地解决了这一问题,同时也为用户提供方便的信息获取渠道。
1.2 选题的目的与意义
本文研究的目标是通过对各种功能单元进行最优的整合,从而达到对各种管理的具体要求,从而最大限度地提高本行业的自动化和信息化水平,从而使得畅销图书推荐系统更清楚、更透明。操作简单,管理方便,可以实现自动检测,减少了畅销图书推荐的错误。畅销图书推荐系统最大的特色在于信息的处理,因为它涉及到大量的信息,而且涉及到的各种类型和复杂的管理,使得整个过程更加的繁琐。它们之间的联系很复杂,而且数据的检索和分析方式也很复杂。在以往的传统畅销图书推荐中,以上各项工作都是非常繁杂和繁琐的。由于在进行数据的加工时,往往会发生信息的反复传输和丢失,所以必须引进电脑进行信息的管理,以达到改善工作者管理工作的效果。
该软件满足了时代的变化,满足了用户的需求,充分发挥了网络的交互和实时性,提供了方便、快捷、舒适的服务,使用户能够及时掌握最新的信息,使用户能够及时掌握最新的数据,并能有效地提升用户的服务水平。本制度的优势在于:
(1)该系统将图书信息及时地提供给使用者。使用者可以在任何时候登陆该网站查询相关资讯,所有资讯均真实可信,并严肃处理各项事务,确保使用者权益得到切实保障。
(2)该系统网页的界面结构简洁,便于使用者使用。
(3)系统更新方便,成本低廉,能够与用户进行双向的信息交换,能够适应市场的发展,并能吸引到越来越多的用户[2]。

1.3 初步设计方法与实施方案
软件体系结构方案:由于本系统需要在不同设备上都能运行,而且电脑配置要求也要越低越好,为了实现这一要求,经过考虑B/S架构成为最佳之选。使用B/S架构的系统可以几乎在任何电脑上运行,只要浏览器可以正常工作就可以正常运行该系统,而且后期维护及二次修改较为容易,符合要求。
操作系统方案:Windows10操作系统,该系统是目前微软公司推出的最新系统,目前大多数市面上的电脑都使用该系统,并且该系统功能完善,兼容性好。开发工具:选用 Eclipse,Java开发语言springboot框架,MySQL数据库。
1.4 本文研究内容
该系统以 B/S架构为基础,通过 Mysql技术,实现了对数据的查询与存储,保证了工作的正常、高效,提高了工作效率。主要的工作包括:
(1)本系统界面简洁明了,便于使用者进行操作。Eclipse提供了可视化的程序设计,大多数的功能都可以由控制程序来实现,并且用户可以很容易地进行各种操作。
(2)本系统分为二部分,能够满足管理人员与使用者的不同需要。该系统的使用者有:管理员及用户[3]。

2 关键技术介绍

2.1 Java语言
Java是一种在Web应用开发中得到广泛使用的脚本语言,经常被用来对用户的相关行为做出反应。它还具有面向对象的设计能力,使设计开发过程更加直观和模块化,并在HTML基础上进行交互Web页面的开发。这种脚本语言的问世,使用户与页面之间的实时、动态交互成为现实,丰富了页面的内容,增强了页面的活力。另外,Java技术也被广泛地运用于该系统,比如对用户输入的数据进行检测,以保证其有效性。Java技术可以在不依赖Web服务程序的基础上在本地客户机上运行。从而有效地解决了因网络速度所带来的迟缓问题,使用户能够更加顺畅、快捷地进行访问。一些功能,比如用户的数据输入,可以通过JavaScript这样的客户语言来完成。该系统采用Java客户机进行用户身份认证,确保了系统的安全性和可靠性。
2.2 Vue简介
VUE是一套用于构建用户界面的渐进式框架。为了实现前后端分离的开发理念,开发前端 SPA(single page web application) 项目,实现数据绑定,路由配置,项目编译打包等一系列工作的技术框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动.

2.3 MySQL数据库
网站的发展必须与数据库相配套,数据库有一定的组织结构,可以存储和管理的数据信息,在过去的数据库的功能只是数据保存和管理操作,但时代的变化和发展,现在数据库已经演变成一种数据处理、数据库从一开始简单的存储的数据表信息现在可以存储成千上万的大型数据库中的数据,或者经历了很多改革。
本管理系统开发使用的数据库是MYSQL数据库,数据库运行速度快,安全性能也很高,而且使用平台没有任何限制,所以应该广泛的输送到系统的开发中去。MySQL是一个开源和多线程关系管理数据库系统,MySQL数据库是开源的,跨平台的阻力,尽管不是强大,导致很多人都知道的基本应用程序数据库在数据库中,每个表是对应的,每个都有自己的连接,数据库具有重要意义,你不能运行一个程序没有数据库的链接,你可以看到数据库和程序是多么重要,他们是如何紧密相连的。
2.4 Spring Boot框架
Spring Boot是近几年最为流行的后台开发框架,它的诞生一改过去Spring框架开发中繁琐的配置,极大地简化了Spring应用的搭建和开发。Spring Boot框架不仅保有了Spring框架中的所有优秀特性,还通过使用特定的配置方式,在底层帮助开发人员在工程创建是就预先做了很多配置,这样在开发时就不再需要开发人员过多进行繁琐的配置了。另外在Spring Boot中集成了大量框架,这就使得开发人员不再需要到处寻找在导入开发中需要依赖的jar包,同时也解决了依赖包版本冲突问题,从而提高了依赖包引用的稳定性,从而实现了对Spring应用搭建和开发过程的简化。

3 系统分析

3.1可行性分析
在开发一个新的软件之前,必须要进行一个系统的可行性研究,以最大限度地利用这个问题。以下我们将从系统,技术,操作、运营、法律等方面来决定该体系的发展[4]。

3.1.1系统可行性分析
利用计算机支持高效率完成畅销图书推荐系统的日常事务,是适应现代化制度要求、推动信息管理系统走向科学化、规范化的必要条件;同时计算机有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高畅销图书推荐系统的效率,也是本系统信息化的重要条件[5]。
3.1.2 技术可行性分析
畅销图书推荐系统在使用电脑和信息分析系统这些设计没有硬性要求,电脑只要是可以正常使用的话,那么代码和页面设计就是可行的。要求高的主要是服务器,平台上传服务器一定要选择性价比高和安全性高的,打开网站一定要顺滑不卡顿,所以硬件也是可行的[6]。
3.1.3 操作可行性分析
将根据管理系统中的用户体验和管理员的效率来分析该措施的可行性。管理人员和用户都可以通过简单的操作登录进对应的系统页面,方便用户搜索业务信息和管理人员管理数据,不需要特别懂电脑的人也可以轻松访问系统模块。该系统已完全投入使用[7]。

3.1.4运营可行性
可操作性是指将系统开发所涉及到的所有功能全都实现,代码收尾工作完成后对用户消费水平,系统的业务能力是否与用户消费水平所对等,是否可以满足大部分消费者的需求,页面是否美观,能否让用户满意,代码显示是否为轻量级,操作和功能是否简单便捷,是否同时适用于小孩,成人和老人。系统能否同时应用于windows、linux等操作系统,这取决于系统的可移植性。JAVA 编程语言的适应性非常强,基本上能够较好的适应目前市场环境中所流行的各个平台。也就是说Java的可移植性很强,那么系统的价值越高,可行性也就越强。
3.1.5法律可行性
该畅销图书推荐系统是面向大众开源化和不收取任何费用的。它的主要目的是帮助用户解决购买图书问题。完全符合法律可行性要求,系统内部权限划分不会导致内部用户泄露系统机密。对于用户信息,系统有保护措施,用户密码在数据库中加密,并有严格的自我控制和商品价格解释。

3.2 需求分析
需求分析的首要是要分析用户的需求,知道用户存在的一些情况,并且要明确用户的使用状况,然后设计规划解决的问题。其中在使用定性的分析以及定量的分析,从这两个方面获取用户的需求。一方面定性的分析获得的应该是用户的基本需求,能够发现现在人们的习惯要求。所以定性的需要主要是为了多与用户交流,从而更为深刻的了解一些存在的需求问题;定量的分析则是发现一些潜在的用户,并且获得不一样的反馈内容。所以定量的需求要让用户来阐述一些情况,一定让使用者清晰的进行客观的描述,这样才能够比较全面的获得用户的需求所在。
其中获得用户需求以后,就要可以将用户需求设计为畅销图书推荐系统的功能模块。在能及时的分析和发现有关需求的情况下,需要系统同时的跟进需求设计。在畅销图书推荐系统过程中还需要创建需求工作的数据分析,以便于后面的分析做总结。写入一个需求的报告内容,其中需要包含完整的描述需求、以及功能需求、模型等后续开发过程中还需要用到的部分资料。
需求的分析中用户需求就是比较的重要,而且可以通过各种的路径,以及各用户对于系统的功能需求,你需要对这些内容做出整理以及分类,然后分析这些需求的现实情况下的可能原因,还需要有认真的分析过程,结合现实的情况下最终做出一系列的需求资料。在有关用户的期望分析中能够明确一些可能实现的情况,畅销图书推荐系统功能是许多个可以测试的功能相结合的,正是由于这些功可以使得用户能够更加积极的提供出需求,让系统功能可以变得更加的完善。这样就可以保证所有设计的功能模块都是可以用到的,而且也是可测试的,对于后续系统的开发能够有比较关键的作用,也能快速完成用户所提供的需求。
这个阶段所要求做的就是将上述的分析具体化,设计出能满足预定目标系统的过程。从粗到细,根据程序结构化设计的要求,把整个项目分为二个用户角色,分别是管理员与用户。在具体的功能模块设计上,二个角色的功能又不尽相同[8]。作为系统实施的基础,系统设计的作用尤为重要。
3.3系统用例图
畅销图书推荐系统可以将功能划分为用户的使用功能和管理员功能。
(1)用户关键功能包含用户注册登录,图书信息、热销图书、新书资讯、在线客服、购物车等有关信息,并进行详细操作。用户用例如下:
在这里插入图片描述

图3-1 用户用例图

(2)管理员的权限是最高的,可以对系统所在功能进行查看,修改和删除,包括用户功能。管理员用例如下:

在这里插入图片描述
图3-2管理员用例图

3.4系统流程的分析
3.4.1 用户管理的流程
用户管理包括:添加用户信息,查看用户信息,修改用户信息,删除/激活用户信息。添加用户信息后设置用户信息的参数,如果参数合法,保存用户信息,否则需要重新设置参数;查询用户信息需要输入查询关键字,然后返回查询信息;查看用户信息就可以查看详细的信息;修改用户信息需要修改参数,如果修改后的参数合法,保存用户信息,否则需要重新修改参数;删除/激活用户信息后删除/激活用户信息成功[9]。用户管理的流程如图3-3所示。

在这里插入图片描述

图3-3 用户管理流程
3.4.2 个人中心管理流程
进入主页面后点击个人中心查看,点击修改密码进入修改密码页面,输入原密码和新密码,判断是否符合要求,如果符合要求即可保存,否则需要重新输入。个人中心管理流程如图3-4所示[10]。

在这里插入图片描述

图3-4 个人中心管理流程
3.4.3 登录流程
进入登录界面后,输入用户名和密码,选择角色后验证,如果正确进入主界面,否则需要重新输入。登录流程如图3-5所示[11]。

在这里插入图片描述

图3-5 登录流程

4系统设计

4.1 软件功能模块设计
畅销图书推荐系统分为二个模块,分别是管理员功能模块和用户功能模块。管理员功能模块包括:用户、图书类型、图书信息、热销图书、系统和订单功能,用户功能模块包括:图书信息、热销图书、新书资讯、在线客服、购物车,网站总体功能如下图所示[12]。
在这里插入图片描述

图4-1畅销图书推荐系统总体功能模块图
4.2 数据库设计
4.2.1 概念模型设计
概念模型是对现实中的问题出现的事物的进行描述,ER图是由实体及其关系构成的图,通过E-R图可以清楚地描述系统涉及到的实体之间的相互关系。
用户信息包括:账号、昵称、性别、手机、邮箱、头像。
用户信息实体图如图4-2所示。
在这里插入图片描述

图4-2用户信息实体图

购物车包括:商品表名、用户id、商品id、商品名称、图片、购买数量、单价、会员价、商品类型。
购物车实体图如图4-3所示。
在这里插入图片描述

图4-3购物车实体图

图书信息包括:图书名称、图书类型、图片、作者、出版社、出版时间、单限、库存、点击次数、价格。
图书信息实体图如图4-4所示。
在这里插入图片描述

图4-4图书信息实体图

热销图书包括:图书名称、图书类型、图片、作者、出版社、热销排名、单限、库存、点击次数、价格。
热销图书实体图如图4-5所示。
在这里插入图片描述

图4-5热销图书实体图

4.2.2 数据表
学习程序设计,如果要了解数据库管理系统或者是根据需求而制定的系统接口,就必须创建一种数据库管理系统的模式,用来保存数据资料,这样当在应用编程过程中时候,就不需要再向操作系统页面上加载信息,进而增加了整个系统的工作效率。信息库管理系统中保存着许多数据,应该说是一个管理信息系统建设的中心和基础,而信息库管理系统也为管理信息系统建设提出了新增、删除、更改和搜索的操作功能,使管理信息系统建设能够迅速地查询所需要的数据,而不会直接从程序代码中查找。信息库管理系统通过将信息表的各个组成部分按照特定的方法准确地合并,排序和组成信息库管理系统。
本系统采用的是MySQL数据库存储数据,系统中使用到的主要数据表的具体展示部分如下所示。
表4-1: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-2:热销图书评论表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
avatarurl longtext 4294967295 头像
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容

表4-3:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

name varchar 100 配置参数名称
value varchar 100 配置参数值

表4-4:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP

表4-5:图书类型
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
tushuleixing varchar 200 图书类型

表4-6:地址
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
address varchar 200 地址
name varchar 200 收货人
phone varchar 200 电话
isdefault varchar 200 是否默认地址[是/否]

表4-7:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注

表4-8:热销图书
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
tushumingcheng varchar 200 图书名称
tushuleixing varchar 200 图书类型
tupian longtext 4294967295 图片
zuozhe varchar 200 作者
chubanshe varchar 200 出版社
tushujianjie longtext 4294967295 图书简介
rexiaopaiming int 热销排名
onelimittimes int 单限
alllimittimes int 库存
clicktime datetime 最近点击时间
clicknum int 点击次数 0
price float 价格

表4-9:订单
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
orderid varchar 200 订单编号
tablename varchar 200 商品表名 rexiaotushu
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 商品图片
buynumber int 购买数量
price float 价格 0
discountprice float 折扣价格 0
total float 总价格 0
discounttotal float 折扣总价格 0
type int 支付类型 1
status varchar 200 状态
address varchar 200 地址
tel varchar 200 电话
consignee varchar 200 收货人
remark varchar 200 备注
logistics longtext 4294967295 物流
goodtype varchar 200 商品类型

表4-10:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhanghao varchar 200 账号
mima varchar 200 密码
nicheng varchar 200 昵称
xingbie varchar 200 性别
shouji varchar 200 手机
youxiang varchar 200 邮箱
touxiang longtext 4294967295 头像
money float 余额 0

表4-11:新书资讯
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容

表4-12:图书信息评论表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
avatarurl longtext 4294967295 头像
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容

表4-13:在线客服
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
adminid bigint 管理员id
ask longtext 4294967295 提问
reply longtext 4294967295 回复
isreply int 是否回复

表4-14:图书信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
tushumingcheng varchar 200 图书名称
tushuleixing varchar 200 图书类型
tupian longtext 4294967295 图片
zuozhe varchar 200 作者
chubanshe varchar 200 出版社
chubanshijian date 出版时间
tushujianjie longtext 4294967295 图书简介
onelimittimes int 单限
alllimittimes int 库存
clicktime datetime 最近点击时间
clicknum int 点击次数 0
price float 价格

表4-15:购物车表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
tablename varchar 200 商品表名 rexiaotushu
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 图片
buynumber int 购买数量
price float 单价
discountprice float 会员价
goodtype varchar 200 商品类型

5 系统功能实现

5.1前台用户模块实现
当游客打开系统的网址后,首先看到的就是首页界面。在这里,游客能够看到畅销图书推荐系统的导航条显示首页、图书信息、热销图书、新书资讯、在线客服、购物车等,系统首页界面如图5-1所示:
在这里插入图片描述

图5-1 系统首页界面

当用户进入系统进行相关操作前必须进行注册、登录,用户注册、用户登录界面如图5-2所示:

在这里插入图片描述

图5-2 用户注册、用户登录界面

用户点击图书信息,在图书信息页面的搜索栏输入图书名称、图书类型,进行查询,还可以查看图书名称、图书类型、图片、作者、出版社、出版时间、单限、库存、点击次数、价格等信息,然后添加到购物车、立即购买、收藏或者评论等操作,如图5-3所示:
在这里插入图片描述

图5-3图书信息页面

购物车:用户将想要购买的商品加入购物车,加入购物车后可以增减数量、删除、点击购买,可一键清除失效商品,如图5-4所示:
在这里插入图片描述

图5-4购物车页面

点击在线客服,用户可以输入内容进行咨询,管理员可以在后台进行查看并回复,达到用户和管理员交流的效果,如图5-5所示:
在这里插入图片描述

图5-5在线客服页面

在个人中心页面可以输入个人详细信息,进行信息更新操作,还可以对我的订单、我的地址、我的收藏进行详细操作,如图5-6所示:
在这里插入图片描述

图5-6个人中心界面

5.2后台管理员模块实现
管理员登录,在登录页面正确输入用户名和密码后,点击登录操作;如图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订单管理界面

6系统测试

在经过长期的测试与修改下,系统能正常运行,已经达到基本的要求,但难免有时会出现一些报错和Bug,如果忽略一些不起眼的小问题有可能会产生连锁反应:数据的报错,数据的无缘被修改以及泄露,甚至会成为不法分子的可乘之机,给开发者和使用者造成惨重的代价。综合以上几点,必修要对这个完成的系统进行测试,只有通过一定的测试来解决这些出现的问题。通过不断地进行测试,一步一步的发现系统中的问题,然后对问题进行一次又一次的修改,使该畅销图书推荐系统更加完善,最后争取没有漏洞和Bug,成为一个接近完美无暇的畅销图书推荐系统的网站。还要在测试修改的过程中吸取经验:自己为什么会犯这种错误、代码的编写哪个逻辑环节出了错误、又有哪些地方是因为自己的粗心大意造成的等等。使系统本身接近完美以及以后的维护更加快捷方便[13]。
本课题根据实际需求情况,选择以功能为主要的黑盒测试方法。具体测试过程如下:
当用户输入用户名和密码后未勾选用户时,系统提示“请选择用户登录类型”;当输入错误的用户名或密码时,系统提示“账号或密码不正确”;当输入正确的用户名和密码时,系统提示“登陆成功”后进入首页;当输入用户名和密码后点击重置,用户名和密码清空,则可以重新输入用户名和密码。如表6-1所示[14]。
表6-1登录功能测试表
测试内容 测试数据 期望结果 实际结果
登录功能 用户名:430
密码:430 提示请选择用户登录类型 提示请选择用户登录类型
登录功能 用户名:430
密码:123 提示账号或密码不正确 提示账号或密码不正确
登录功能 用户名:430
密码:430 提示登陆成功 提示登陆成功
重置功能 用户名:430
密码:430 用户名和密码重置 用户名和密码重置

当只输入账号后点击注册时,系统提示“必填项不能为空”;当只输入账号、密码和注册密码时,系统提示“姓名不能为空”;当输入账号、密码、注册密码和姓名后,系统提示“注册成功”并且进入登录界面;当输入账号后点击重置,账号清空,则可以重新输入[15]。如表6-2所示。
表6-2注册功能测试表
测试内容 测试数据 期望结果 实际结果
注册功能 账号:507 提示必填项不能为空 提示必填项不能为空
注册功能 账号:507
密码:507
确认密码:507 提示姓名不能为空 提示姓名不能为空
注册功能 账号:507
密码:507
确认密码:507
姓名:王一 提示注册成功,进入登录界面 提示注册成功,进入登录界面
重置功能 账号:507 账号重置 账号重置

6.1 系统测试结论
本系统主要使用黑盒测试,通过模拟用户使用系统实现各个功能编写测试用例,并进行测试。以确保系统流程的正确性。系统测试必不可少,可以使系统更加完善,该系统的可使用性也会更高。
测试该系统主要为了验证系统的功能模块是否满足我们最初的设计理念,验证各个功能模块逻辑是否正确,此系统不需要过于复杂的逻辑处理,以便于使用者操作。测试的最终目的也是围绕着用户使用展开。测试过程中所有场景都应符合用户需求,不可偏离需求目标,遇到问题时要站在用户的角度进行思考。经过一系列的测试过程后得到最终的测试结果,从测
试结果可以看出,实现的系统在功能和性能方面满足设计要求。

结 论

毕业设计创作已经接近尾声了,大学生活也即将结束,对于软件工程这门学科,真可谓是博大精深,值得我们学习和思考的东西还有好多,只有不断地拜读前人的著作,了解最新技术,才是学习这门可最好的方法。
在此次设计中,渐渐对数据库设计、软件工程和java这几门课程的知识有了更加深刻的理解,并能够灵活运用其中的知识来分析实际的问题,加强了我的分析和考虑问题的能力。
更重要的是从指导老师xxx身上学到了很多东西。她待学生细心热枕,耐心回答学生的问题,主动询问学生的难处,使我见过难得的平易近人的老师。她工作态度认真负责,讲课生动透彻,让我不管是在专业还是做人上感触颇深,让我得到不少的提高,这对于我以后的工作和学习都有一种巨大的帮助,感谢她细心而又耐心的辅导。

致 谢

论文可以停留在第六章,但是人生还需要继续。
行文至此,落笔为终。我的大学生涯到此处画上了句号。始于xxx年金秋,终于xxxx盛夏。逐梦计算机学院,终究还需离别。目之所及,皆是回忆。感谢母校的培育与关怀,让我的大学生活充满色彩。
生逢盛世,与有荣焉。感谢党和国家为我提供了和平安逸的学习环境和生活环境,让我可以接受更好的教育,成为一名有理想、有知识的大学生。
桃李不言,下自成蹊。大学生活中我首先要感谢我的导员xxx老师,专业知识渊博,为学严谨认真,待人和蔼可亲,关心学生,让我感受到大学中的温暖。特别是在大学的最后阶段,每天帮我们筛选公司,帮助我就业;写论文时对我谆谆教诲,松懈时的督促。这四年张老师倾注的心血难以估计。感谢我的指导老师xxx老师,在我有困惑时总是不厌其烦的帮我解答问题,不管多晚给老师发消息,她总是第一时间向我伸出援手。为了我可以更好的完成毕业设计,经常会发一些小技巧帮助我。良师难得,定将一生铭记,一生感恩。
父母之恩,无以为报。他们含辛茹苦的将我养大成人,让我站在他们的肩膀上见识到了他们没见到的繁华。即将踏入社会,我只想不断努力,成为他们的骄傲。
平生感知己,寸岂悠悠。恰同学少年,风华正茂。我想感谢自己的室友们,朋友们。在我迷茫的时候有你们陪我,在我开心的时候你们也会在我身边。愿你们前程似锦,以梦为马,不负韶华。
本次毕业设计的完成预示着大学时代的句号,在这个设计过程中,我收获到的绝不仅仅是做项目过程中要到的知识,更多的是同窗情谊和师生情谊,最重要的是做任何事情都要具备的认真态度,以及真正职业的思考方式方法。我会带着大学收获的知识走向社会,我们更高处见!

参考文献

[1] 陈湘瑾, 孙瑜鸿, 祖子帅,等. 基于java开发技术的信息化房屋租赁系统[J]. 科学技术创新, 2021.
[2] 刘洋瑀. 某畅销图书推荐系统[D]. 华中科技大学, 2019.
[3] 魏婷. 保险业呼叫中心运营平台的开发与实现[D]. 北京化工大学.
[4] 罗云飞, 张德伟, 窦鑫鑫,等. B/S 架构信息化管理软件在粮油流程化检验中的应用[J]. 粮食科技与经济, 2022, 47(1):3.
[5] 张文, 方巍, 贾雪磊. 基于springboot框架的合租系统设计与实现[J]. 计算机技术与发展, 2021, 31(11):6.
[6] 王一竹. 基于MySQL的图书馆信息管理系统设计[J]. 电脑编程技巧与维护, 2022(1):4.
[7] 石怡. 基于MySQL数据库的查询性能优化研究[J]. 四川职业技术学院学报, 2021, 31(1):5.
[8] 倪灵枝. 计算机软件Java编程特点及其技术研究[J]. 科技资讯, 2022, 20(1):3.
[9] 王宏, 王清勇. 计算机软件开发中Java编程语言的应用[J]. 数字技术与应用, 2020, v.38;No.355(01):42-43.
[10] 柯采. 计算机软件开发中Java编程语言的应用[J]. 电脑编程技巧与维护, 2019(10):3.
[11] 吕萱. 计算机软件开发中Java编程语言的应用[J]. 信息与电脑, 2020(8):3.
[12] 张烈超, 胡迎九. 典型Java Web开发框架模型的研究[J]. 武汉交通职业学院学报, 2021, 23(4):6.
[13]陈孝威, 陈凌云. 三层体系结构的客户机/服务器 [J]. 计算机应用, 2020(01): 23-26.
[14]杨秀斌, 李岩琦, 景慎艳. 畅销图书推荐系统 [J]. 电子世界, 2019(09): 179+182.
[15]苏蒙蒙. 基于移动互联网的家政服务系统的设计与实现 [D]. 北京邮电大学, 2020: 10-45.
[16]万佳. 南昌市停放车辆管理系统分析与设计 [D]. 云南大学, 2021: 34-78.
[17]王子元. 浅析畅销图书推荐系统的培养与发展 [J]. 知识经济, 2020(20): 58-59.
[18] Hu X , Yan C . Development and application of JAVA language development test evaluation system software[J]. Journal of Computational Methods in Sciences and Engineering, 2020:1-12.
[19] Huang C Y . Learning Database through Developing Database Web Applications[J]. International Journal of Information and Education Technology, 2019, 9(4):241-249.
[20]Qiuying Han,Xiuye Yin. Application of Java Programming Language in Computer Software Development[J]. International Journal of Computational and Engineering,2020,5(4).

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/461266.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Springboot 整合 Elasticsearch(五):使用RestHighLevelClient操作ES ②

📁 前情提要: Springboot 整合 Elasticsearch(三):使用RestHighLevelClient操作ES ① 目录 一、Springboot 整合 Elasticsearch 1、RestHighLevelClient API介绍 1.1、全查询 & 分页 & 排序 1.2、单条件查询…

PFA烧杯透明聚四氟乙烯刻度量杯

PFA烧杯,刻度清晰,耐酸碱,和有机溶剂。

模板进阶:非类型模板参数,特化

一、非类型模板参数 非类型模板参数&#xff0c;就是用一个常量作为 类/函数 的模板参数&#xff0c;在 类/函数 中可以被当成常量使用。 template<class T, size_t N>// N 为一个非类型模板参数 class Stack { public:Stack(){_a new T[N];} protected:T* _a; };int m…

Python环境安装及Selenium引入

Python环境安装 环境下载 Download Python | Python.org 环境安装 需使用管理员身份运行 查看环境是否安装成功 python --version 如果未成功则检查环境变量配置 安装 Selenium 库 pip install selenium Selenium 可以模拟用户在浏览器中的操作&#xff0c;如点击按钮、填写…

Python的异常处理机制之基础代谢

try语句是Python中的异常处理机制。当我们预料到某个代码块可能会引发异常时&#xff0c;可以将这部分代码放在try语句块中。如果try语句块中的代码执行时发生异常&#xff0c;Python会跳出当前的执行流程&#xff0c;并查找是否有对应的异常处理代码。 try语句的基本语法如下…

C++第五弹---类与对象(二)

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】 类与对象 1、类对象模型 1.1、如何计算类对象的大小 1.2、类对象的存储方式猜测 1.3、结构体内存对齐规则 2、this指针 2.1、this指针的引出 2.2…

Spring Cloud Alibab 入门搭建,包含Nacos中心,注册服务发现服务,Feign请求,GateWay网关,sentinel限流

源码在最后 一、安装Nacos注册中心 1.1查看Nacos官网&#xff0c;安装Nacos服务&#xff0c;下载源码或者安装包 1.2启动服务&#xff0c;默认端口为8848&#xff0c; 二、创建服务注册&发现 2.1使用脚手架&#xff0c;创建注册服务和发现服务项目&#xff0c;我用的版…

轻松玩转消息通信:SimpleAmqpClient 和 RabbitMQ 在C++中的终极指南

Rabbmq服务端 安装 这里我使用docker安装rabbitmq服务端,没有安装的就先去看其他的博客安装rabbitmq或者docker #拉取rabbitmq docker pull rabbitmq:management #运行rabbitmq,记得打开防火墙端口 docker run -d --hostname rabbitsrv --name rabbit -p 5672:5672 -p 15672…

【DL经典回顾】激活函数大汇总(十七)(Softmax2d附代码和详细公式)

激活函数大汇总&#xff08;十七&#xff09;&#xff08;Softmax2d附代码和详细公式&#xff09; 更多激活函数见激活函数大汇总列表 一、引言 欢迎来到我们深入探索神经网络核心组成部分——激活函数的系列博客。在人工智能的世界里&#xff0c;激活函数扮演着不可或缺的角…

机器硬件命令

一、查看机器核数 有以下几种方法 1、lscpu命令 lscpu命令可以显示关于CPU的信息&#xff0c;包括核数、线程数等。在终端中输入以下命令即可查看CPU核数&#xff1a;该命令会输出CPU每个物理插槽的核数。 lscpu | grep "Core(s) per socket" | awk {print $NF} …

zed2i录制前的准备

录制前需设置文件主要有两个 文件一&#xff1a;catkin_zed/src/zed-ros-wrapper-3.8.x/zed_wrapper/params/common.yaml # params/common.yaml # Common parameters to Stereolabs ZED and ZED mini cameras ---# Dynamic parameters cannot have a namespace brightness: …

力扣大厂热门面试算法题 36-38

36. 有效的数独&#xff0c;37. 解数独&#xff0c;38. 外观数列&#xff0c;每题做详细思路梳理&#xff0c;配套Python&Java双语代码&#xff0c; 2024.03.16 可通过leetcode所有测试用例。 目录 36. 有效的数独 解题思路 完整代码 Java Python 37. 解数独 解题思…

ElementUI Message 消息提示,多个显示被覆盖的问题

现象截图&#xff1a; 代码&#xff1a;主要是在this.$message 方法外层加上 setTimeout 方法 <script> export default {name: "HelloWorld",props: {msg: String,},methods: {showMessage() {for (let i 0; i < 10; i) {setTimeout(() > {this.$mess…

k8s-高可用etcd集群 26

reset掉k8s2&#xff0c;k8s3&#xff0c;k8s4节点 清理完网络插件后重启 快速创建一个k8s集群 修改初始化文件 添加master节点 备份 查看etcd配置 启动docker 将etcd二进制命令从容器拷贝到本机 备份 查看快照状态 删除集群资源 恢复 停掉所有的核心组件 从快照恢复 重启所有…

如何在CasaOS系统玩客云中安装内网穿透工具实现远程访问内网主机下载资源

文章目录 1. CasaOS系统介绍2. 内网穿透安装3. 创建远程连接公网地址4. 创建固定公网地址远程访问 2月底&#xff0c;玩客云APP正式停止运营&#xff0c;不再提供上传、云添加功能。3月初&#xff0c;有用户进行了测试&#xff0c;局域网内的各种服务还能继续使用&#xff0c;但…

加密算法 —— 有哪些容易入门且实用的算法?

一、背景 对于初学者来说&#xff0c;一些相对容易入门且实用的加密算法如下&#xff1a; 1. Caesar Cipher&#xff08;凯撒密码&#xff09;: - 凯撒密码是最简单的替换式加密算法之一&#xff0c;通过将字母按照固定位数向前或向后偏移来进行加密。尽管在现代安全场景下…

API接口数据集接口pytorch api接口获取数据

API是应用程序的开发接口&#xff0c;在开发程序的时候&#xff0c;我们有些功能可能不需要从到到位去研发&#xff0c;我们可以拿现有的开发出来的功能模块来使用&#xff0c;而这个功能模块&#xff0c;就叫做库(libary)。比如说&#xff1a;要实现数据传输的安全&#xff0c…

外贸干货|小白必须知道的六大开发信模板!

外贸人必看的开发信模板&#xff08;建议收藏学习&#xff09; 一封好的开发信是开发客户环节里至关重要的节点。 大体上需得简洁明了、开门见山、立意明确。内容上要注重客户需求和问题的解决。另外&#xff0c;高质量的开发信一定不是千篇一律的&#xff0c;而是“入乡随俗…

【进阶五】Python实现SDVRP(需求拆分)常见求解算法——遗传算法(GA)

基于python语言&#xff0c;采用经典遗传算法&#xff08;GA&#xff09;对 需求拆分车辆路径规划问题&#xff08;SDVRP&#xff09; 进行求解。 目录 往期优质资源1. 适用场景2. 代码调整3. 求解结果4. 代码片段参考 往期优质资源 经过一年多的创作&#xff0c;目前已经成熟的…

RISC-V 编译环境搭建:riscv-gnu-toolchain 和 riscv-tools

RISC-V 编译环境搭建&#xff1a;riscv-gnu-toolchain 和 riscv-tools 编译环境搭建以及说明 操作系统&#xff1a;什么系统都可以 虚拟机&#xff1a;VMmare Workstation Pro 17.50.x (版本不限) 编译环境&#xff1a;Ubuntu 18.04.5 CPU&#xff1a;i7-8750h(虚拟机分配4核…