个人博客网:https://wushaopei.github.io/    (你想要这里多有)

一、短视频项目产品设计介绍:

该项目为仿抖音的短视频项目,主要模块有后台短视频管理模块、搜索模块、登录注册模块、视频详情模块、个人中心、视频列表模块等

1、视频详情模块

在该模块中,视频与音频的关系有以下几种:

  1. 视频+原声
  2. 视频+背景音乐

功能点分析:

  1. 头像,跳转个人中心
  2. 收藏,(五角星)
  3. 评论,(窗口)
  4. 转发,(信函+箭头)
  5. 首页(左下角)
  6. 关注的人的资讯(正下方中间的眼睛)
  7. 个人中心(右下角)

转发按钮:

可以转发分享到微信朋友圈或QQ空间或下载到本地。

举报用户:

点击“举报用户”按钮进入页面,填写举报描述,并提交。

2、视频列表模块

视频瀑布流列表:多个短视频以纵向排列进行展示

3、登录注册模块

功能点分析:

  1. 登录(输入用户名、密码)
  2. 注册,点击橙红色按钮跳转注册页面

4、个人中心模块

个人中心包含的功能点有:

  1. 粉丝数
  2. 关注数
  3. 获赞数
  4. 作品列表
  5. 收藏列表
  6. 上传作品按钮(上传短视频)
  7. 注销按钮
  8. 分享按钮(右上角三个小圆点)
  9. 关闭按钮

作品列表:

收藏列表:

点击五角星进行收藏,在收藏列表查看。

分享按钮:

                   

分享按钮只能将内容发送给相应的人,不能分享到微信朋友圈。

5、搜索模块

点击首页右上角的放大镜,进入到搜索页面

功能点分析:

  1. 搜索框
  2. 搜索记录关键词
  3. 热搜关键词

6、短视频管理后台

首页:

用户信息列表:

举报管理列表:

播放审批:查看视频内容:

点击“点我播放”按钮进行视频预览播放

短视频管理:

bgm管理页面:

bgm 新增-提交页面:

bgm 列表:

二、数据库表结构介绍

用户信息表:

CREATE TABLE `users` (
`id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL ,
`username`  varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '用户名' ,
`password`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '密码' ,
`face_image`  varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '我的头像,如果没有默认给一张' ,
`nickname`  varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '昵称' ,
`fans_counts`  int(11) NULL DEFAULT 0 COMMENT '我的粉丝数量' ,
`follow_counts`  int(11) NULL DEFAULT 0 COMMENT '我关注的人总数' ,
`receive_like_counts`  int(11) NULL DEFAULT 0 COMMENT '我接受到的赞美/收藏 的数量' ,
PRIMARY KEY (`id`),
UNIQUE INDEX `id` (`id`) USING BTREE ,
UNIQUE INDEX `username` (`username`) USING BTREE
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
ROW_FORMAT=DYNAMIC
;

用户粉丝表:

CREATE TABLE `users_fans` (
`id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL ,
`user_id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '用户' ,
`fan_id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '粉丝' ,
PRIMARY KEY (`id`),
UNIQUE INDEX `user_id` (`user_id`, `fan_id`) USING BTREE
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
COMMENT='用户粉丝关联关系表'
ROW_FORMAT=DYNAMIC
;

用户收藏的短视频关系设计表:

CREATE TABLE `users_like_videos` (
`id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL ,
`user_id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '用户' ,
`video_id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '视频' ,
PRIMARY KEY (`id`),
UNIQUE INDEX `user_video_rel` (`user_id`, `video_id`) USING BTREE
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
COMMENT='用户喜欢的/赞过的视频'
ROW_FORMAT=DYNAMIC
;

举报信息表设计:

CREATE TABLE `users_report` (
`id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL ,
`deal_user_id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '被举报用户id' ,
`deal_video_id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL ,
`title`  varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '类型标题,让用户选择,详情见 枚举' ,
`content`  varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '内容' ,
`userid`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '举报人的id' ,
`create_date`  datetime NOT NULL COMMENT '举报时间' ,
PRIMARY KEY (`id`)
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
COMMENT='举报用户表'
ROW_FORMAT=DYNAMIC
;

短视频表设计:

CREATE TABLE `videos` (
`id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL ,
`user_id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '发布者id' ,
`audio_id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户使用音频的信息' ,
`video_desc`  varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '视频描述' ,
`video_path`  varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '视频存放的路径' ,
`video_seconds`  float(6,2) NULL DEFAULT NULL COMMENT '视频秒数' ,
`video_width`  int(6) NULL DEFAULT NULL COMMENT '视频宽度' ,
`video_height`  int(6) NULL DEFAULT NULL COMMENT '视频高度' ,
`cover_path`  varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '视频封面图' ,
`like_counts`  bigint(20) NOT NULL DEFAULT 0 COMMENT '喜欢/赞美的数量' ,
`status`  int(1) NOT NULL COMMENT '视频状态:\r\n1、发布成功\r\n2、禁止播放,管理员操作' ,
`create_time`  datetime NOT NULL COMMENT '创建时间' ,
PRIMARY KEY (`id`)
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
COMMENT='视频信息表'
ROW_FORMAT=DYNAMIC
;

搜索关键字表设计:

CREATE TABLE `search_records` (
`id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL ,
`content`  varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '搜索的内容' ,
PRIMARY KEY (`id`)
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
COMMENT='视频搜索的记录表'
ROW_FORMAT=DYNAMIC
;

评论表设计:

CREATE TABLE `comments` (
`id`  varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL ,
`father_comment_id`  varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL ,
`to_user_id`  varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL ,
`video_id`  varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '视频id' ,
`from_user_id`  varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '留言者,评论的用户id' ,
`comment`  text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '评论内容' ,
`create_time`  datetime NOT NULL ,
PRIMARY KEY (`id`)
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
COMMENT='课程评论表'
ROW_FORMAT=DYNAMIC
;

bgm 表设计:

CREATE TABLE `bgm` (
`id`  varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL ,
`author`  varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL ,
`name`  varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL ,
`path`  varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '播放地址' ,
PRIMARY KEY (`id`)
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
ROW_FORMAT=DYNAMIC
;

仿抖音短视频项目笔记 (一)产品介绍与数据库设计相关推荐

  1. uniapp - 仿抖音短视频项目

    仿抖音短视频阅读手册 特殊通知 1.请用户认真阅读以下说明,千万不能混淆页面随意引入,如果你发现运行后页面样式排版错乱,大概率是引入错误喔. 2.请App端用户将HbuilderX版本调整到3.3.9 ...

  2. 从零开始搭建仿抖音短视频APP-构建后端项目

    项目持续创作中... ​​​​​​仿抖音短视频APP项目专栏 目录 聚合工程 构建父工程 构建子工程 构建接口工程并且暴露api接口 优雅Restful相应封装 Lombok与多环境profile 数 ...

  3. 从零开始搭建仿抖音短视频APP-开发用户业务模块(3)

    项目持续更新中: 仿抖音短视频APP专栏 目录 注册登录-BO接受前端参数验证 对BO校验进行统一封装 开发用户是否存在 开发创建用户Service 实现短信注册登录与分布式会话 注册登录-BO接受前 ...

  4. 从零开始搭建仿抖音短视频APP-后端消息业务模块开发(2)-基础版完结篇

    项目持续更新中: 仿抖音短视频APP专栏 目录 系统消息入库保存 MongoDB分页查询系统消息列表 删除系统消息 系统消息入库保存 这里还剩下最后一个点赞评论没有完成 这里如果点赞了你的评论,你们视 ...

  5. 上车短视频赛道:基于uniapp框架快速搭建自己的仿抖音短视频APP

    在今年也就是第48次发布的<中国互联网络发展状况统计报告>有这样一个数据,21年的上半年以来,我国我国网民规模达10.11亿,其中短视频用户达8.88亿.碎片化的生活场景下,短视频成为人们 ...

  6. 从零搭建仿抖音短视频APP-后端开发短视频业务模块(1)

    项目持续更新中: 仿抖音短视频APP专栏 目录 发布短视频的流程梳理 传统上传流程 传统上传 CDN上传 CDN上传流程 使用Unicloud云端功能 实现app端视频上传 保存视频信息入库 发布短视 ...

  7. 仿抖音短视频h5单页版htnl上传即可使用源码文件

    仿抖音短视频的模板 项目是前后端分离,前端采用uniapp开发,后端目前是用frphp临时搭建的接口,后续为了方便管理内容,会移植到极致cms上.现在也可丢到网站里当一个单页使用,无聊时可以刷一刷短视 ...

  8. 从零开始搭建仿抖音短视频APP-后端开发消息业务模块(1)

    项目持续更新中: 仿抖音短视频APP专栏 目录 保存系统消息到MongoDB 系统消息入库保存-关注 系统消息入库保存-点赞短视频 系统消息入库保存-评论与回复 保存系统消息到MongoDB 我们把m ...

  9. 从零开始搭建仿抖音短视频APP-后端开发短视频业务模块(2)

    项目持续更新中: 仿抖音短视频APP 目录 实现数据层mybatis自定义mapper与sql 查询短视频列表api 实现下拉刷新和分页功能 实现数据层mybatis自定义mapper与sql 在数据 ...

最新文章

  1. python colormap(颜色映射)
  2. iOS深入探索直播推拉流实现流程(二:推流权限判断 )
  3. 创建一个打不开删不掉的文件夹
  4. “90后”变“韭零后”,大数据告诉你谁是基民主力军?
  5. 从涂鸦到发布 —— 理解API的设计过程
  6. JUC原子类-数组类型(三)
  7. Win11锁屏快捷键是什么 Win11锁屏的方法
  8. (50)流式布局—京东移动端首页制作案例
  9. 命令+mybatis-generator插件自己主动生成Mapper映射文件
  10. FinTech领域的风险控制——风险篇
  11. 倒角距离(Chamfer distance)和earth mover‘s diatance
  12. update core.php,WordPress更新失败-这通常是由于文件权限不一致所致。:wp-admin/includes/update-core.php...
  13. 第 4 章 MybatisPlus 条件构造器
  14. WayOS路由器企业应用方案
  15. 最厉害的java混淆器_Java-哪个JAVA混淆器好用?
  16. 如何直接修改html文件,如何修改HTML的文件?
  17. 最优化方法-黄金分割法及Matlab实现
  18. 【Git命令】git commit --amend
  19. Unity材质偏移(贴图纹理偏移)实现流动效果【记录一下】
  20. 嘀嘀的费用是优步的两倍?

热门文章

  1. 基于Labview的信号发生器的设计
  2. uni-app隐藏顶部导航栏
  3. nestjs[typeorm学习之多对多表关系探究与使用]
  4. 打造高逼格的开发利器,让你的代码敲出打字机的效果,甚至更……
  5. Segment 2:Introduction Number Theory——Fermat and Euler【费马定理和欧拉定理】
  6. 引入CSS样式表的三种方法
  7. Google Chrome在Windows7安装离线版
  8. Heidisql操作记录
  9. 西邮Linux兴趣小组2021纳新面试题题解
  10. 【论文笔记】—低照度图像增强—ZeroShot—RRDNet网络—2020-ICME