基于 springboot+vue实现的名著阅读网站(源码+L文+ppt)4-035
4 系统设计
4.1 系统概述
名著阅读网站的设计与开发是指对该系统的各个功能模块进行详细设计,力求每个模块都能够满足用户的要求,系统开发完成后还需对系统进行单元测试和系统测试,发现系统中存在的问题并解决,确保系统正常稳定的运行。
4.2 系统结构设计
名著阅读网站的整体结构设计主要分为两大部分:管理员和用户。他们的权限不同,于是操作功能也有所不同。整体结构设计如图4-2所示。
图4-2 系统结构图
4.3 数据库设计
本系统依赖于MySQL数据库来储存信息,系统完成后,所有需要的数据都要从数据库中读取,这也意味着无论是插入、更新还是删除操作,只要对数据有改动的操作都需要与数据库交互,因此,系统的全部数据都要储存在数据库,必须保证数据库在未经授权情况下不得进行删除表结构等危险操作,而且要保证表中字段的准确性。
4.3.1 数据库设计原则
1.从上而下
2.从下至上
3.逐渐扩大
4.结合方法
4.3.2 数据库实体
E-R图,即实体-联系图,它是一种通过对实例进行抽象,以可视化的方式来描述现实世界的概念模型。根据需求分析绘制出数据库的E-R图,能够直观地映射出各个表之间的关系。
阅读记录包括记录编号、名著名称、图片、阅读进度、记录时间、用户账号、用户姓名等信息,E-R图如图4-3所示。
图4-3阅读记录E-R图
阅读计划包括计划编号、名著名称、图片、计划内容、计划时长、计划时间、用户账号、用户姓名等属性,E-R图如图4-4所示。
图4-4阅读计划E-R图
四大名著包括名著名称、图片、名著种类、作品分类、作者、视频解说、有声读书、评论数、收藏数等信息,E-R图如图4-5所示。
图4-5四大名著E-R图
名著推荐包括名著名称、排行榜、名著种类、作品分类、作者、图片、书籍下载、发布时间、评论数、收藏数等属性,E-R图如图4-6所示。
图4-6名著推荐E-R图
名著阅读网站总体E-R图如图4-7所示。
图4-7名著阅读网站E-R图
4.3.3 数据库表设计 (共30张表)
数据库的主要作用是储存和管理整个系统的数据。数据库中的数据在保证一定的独立性和安全性的前提下,也要有某种程度的共享,在一定条件范围内可以共享某些数据。必须保证数据库中每张表里存储的数据是安全的,如果没有经过身份认证,就无法查阅及使用。在进行数据库设计时,应根据具体情况,进行有针对性的数据库开发和设计。下面列举主要数据库表结构。
表4-1:用户表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint |
| 主键 | 主键 |
|
username | varchar | 100 | 用户名 |
|
|
password | varchar | 100 | 密码 |
|
|
image | varchar | 200 | 头像 |
|
|
role | varchar | 100 | 角色 |
| 管理员 |
addtime | timestamp |
| 新增时间 |
| CURRENT_TIMESTAMP |
表4-2: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 |
此处省略28张表。。。
表4-30:红楼梦评论表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint |
| 主键 | 主键 |
|
addtime | timestamp |
| 创建时间 |
| CURRENT_TIMESTAMP |
refid | bigint |
| 关联表id |
|
|
userid | bigint |
| 用户id |
|
|
avatarurl | longtext | 4294967295 | 头像 |
|
|
nickname | varchar | 200 | 用户名 |
|
|
content | longtext | 4294967295 | 评论内容 |
|
|
reply | longtext | 4294967295 | 回复内容 |
|
|
5界面设计与功能实现
5.1 前台用户功能模块的实现
当游客打开系统的网址后,首先看到的就是首页界面。在这里,游客能够看到名著阅读网站的导航条显示首页、四大名著、名著推荐、社区论坛、名著资讯、个人中心。系统首页界面如图5-1所示:
图5-1系统首页界面
在注册流程中,用户在Vue前端填写必要信息(如用户名、密码等)并提交。前端将这些信息通过HTTP请求发送到Java后端。后端处理这些信息,检查用户名是否唯一,并将新用户数据存入MySQL数据库。完成后,后端向前端发送注册成功的确认,前端随后通知用户完成注册。这个过程实现了新用户的数据收集、验证和存储。如图5-2所示:
图5-2用户注册界面图
在登录流程中,用户首先在Vue前端界面输入用户名和密码。这些信息通过HTTP请求发送到Java后端。后端接收请求,通过与MySQL数据库交互验证用户凭证。如果认证成功,后端会返回给前端,允许用户访问系统。这个过程涵盖了从用户输入到系统验证和响应的全过程。如图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 管理员功能界面
名著种类功能在视图层(view层)进行交互,比如点击“增添”按钮或填写名著种类信息表单。这些名著种类动作被视图层捕获并作为请求发送给相应的控制器层(control1er层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如探寻、增添、更新或移除名著种类,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便名著种类功能可以看到最新的信息或相应的操作反馈。在名著种类页面的输入栏中输入名著种类进行探寻,可以查看到名著种类详细信息,并根据需要进行增添或者移除等操作。如图5-9所示。
图5-9名著种类管理界面图
作品分类功能在视图层(view层)进行交互,比如点击“增添”按钮或填写作品分类信息表单。这些作品分类动作被视图层捕获并作为请求发送给相应的控制器层(control1er层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如探寻、增添、更新或移除作品分类,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便作品分类功能可以看到最新的信息或相应的操作反馈。在作品分类页面的输入栏中输入作品分类进行探寻,可以查看到作品分类详细信息,并根据需要进行增添或者移除等操作。如图5-10所示。
图5-1作品分类管理界面图
管理员点击四大名著管理;在四大名著管理页面通过对名著名称、图片、名著种类、作品分类、作者、视频解说、有声读书、评论数、收藏数数等信息,进行探寻、增添或者移除四大名著等操作;如图5-11所示。
图5-11四大名著管理界面图
管理员点击名著推荐管理;在名著推荐管理页面通过对名著名称、排行榜、名著种类、作品分类、作者、图片、书籍下载、发布时间、评论数、收藏数等信息,进行探寻、增添或者移除名著推荐等操作;如图5-12所示。
图5-12名著推荐管理界面图
管理员点击阅读计划管理;在阅读计划管理页面通过对计划编号、名著名称、图片、计划内容、计划时长、计划时间、用户账号、用户姓名等信息,进行探寻或者移除阅读计划等操作;如图5-13所示。
图5-13阅读计划管理界面图
管理员点击阅读记录管理;在阅读记录管理页面通过对记录编号、名著名称、图片、阅读进度、记录时间、用户账号、用户姓名等信息,进行探寻或者移除阅读记录等操作;如图5-13所示。
图5-13阅读记录管理界面图
管理员点击阅读提醒;在阅读提醒页面通过对提醒编号、名著名称、图片、提醒时间、用户账号、用户姓名等信息,进行探寻或者移除阅读提醒等操作;如图5-13所示。
图5-13阅读提醒界面图
管理员点击社区论坛;在社区论坛页面通过对帖子标题、用户名、状态、是否置顶、置顶时间等信息,进行探寻、增添或者移除社区论坛等操作;如图5-13所示。
图5-13社区论坛界面图