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

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

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

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

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

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

后台管理员模块实现
管理员登录,在登录页面正确输入用户名和密码后,点击登录操作;如图5-7所示。

管理员进入系统主页面,主要功能包括对系统首页、个人中心、用户管理、图书类型管理、图书信息管理、热销图书管理、系统管理、订单管理等进行操作。管理员主页面如图5-8所示:

管理员点击图书类型管理,在图书类型管理页面对图书类型等信息,可以查询、新增、修改或删除图书类型等操作。如图5-10所示:

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