基于java的微信小程序的实现(一)项目介绍

一,项目介绍

  • 佐仓短视频是一个以java为后台编写的短视频类的微信小程序项目
  • 用户可以实现登录,注册,视频查看,视频上传,个人信息查看,头像上传等功能

二,技术选型和效果预览

本项目后端采用spring boot +spring data jpa的技术实现

采用Ffmpeg技术对音频和视频进行处理

使用redis数据库实现单点登录和权限验证功能

使用swagger2技术使接口开发更加简洁清楚

使用postman对接口进行测试

数据库采用mysql数据库

使用内网穿透技术提供测试环境


三,数据库表的设计

该项目一共分为8张表

1.背景音乐表

DROP TABLE IF EXISTS `bgm`;
CREATE TABLE `bgm` (
  `id` varchar(64) NOT NULL,
  `author` varchar(255) NOT NULL,
  `name` varchar(255) NOT NULL,
  `path` varchar(255) NOT NULL COMMENT '播放地址',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

2.用户评论表

DROP TABLE IF EXISTS `comments`;
CREATE TABLE `comments` (
  `id` varchar(20) NOT NULL,
  `father_comment_id` varchar(20) DEFAULT NULL,
  `to_user_id` varchar(20) DEFAULT NULL,
  `video_id` varchar(20) NOT NULL COMMENT '视频id',
  `from_user_id` varchar(20) NOT NULL COMMENT '留言者,评论的用户id',
  `comment` text NOT NULL COMMENT '评论内容',
  `create_time` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='评论表';

3.热搜词表

DROP TABLE IF EXISTS `hot`;
CREATE TABLE `hot` (
  `id` varchar(64) NOT NULL,
  `content` varchar(128) DEFAULT NULL COMMENT '搜索的内容',
  `num` int(11) NOT NULL COMMENT '搜索的次数',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='视频搜索的记录表';

4.用户表

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

5.用户粉丝关系表

DROP TABLE IF EXISTS `users_fans`;
CREATE TABLE `users_fans` (
  `id` varchar(64) NOT NULL,
  `user_id` varchar(64) NOT NULL COMMENT '用户',
  `fan_id` varchar(64) NOT NULL COMMENT '粉丝',
  PRIMARY KEY (`id`),
  UNIQUE KEY `user_id` (`user_id`,`fan_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户粉丝关联关系表';

6.用户点赞视频表

DROP TABLE IF EXISTS `users_like_videos`;
CREATE TABLE `users_like_videos` (
  `id` varchar(64) NOT NULL,
  `user_id` varchar(64) NOT NULL COMMENT '用户',
  `video_id` varchar(64) NOT NULL COMMENT '视频',
  PRIMARY KEY (`id`),
  UNIQUE KEY `user_video_rel` (`user_id`,`video_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户喜欢的/赞过的视频';

7.视频信息表

DROP TABLE IF EXISTS `videos`;
CREATE TABLE `videos` (
  `id` varchar(64) NOT NULL,
  `user_id` varchar(64) NOT NULL COMMENT '发布者id',
  `audio_id` varchar(64) DEFAULT NULL COMMENT '用户使用音频的信息',
  `video_desc` varchar(128) DEFAULT NULL COMMENT '视频描述',
  `video_path` varchar(255) NOT NULL COMMENT '视频存放的路径',
  `video_seconds` float(6,2) DEFAULT NULL COMMENT '视频秒数',
  `video_width` int(6) DEFAULT NULL COMMENT '视频宽度',
  `video_height` int(6) DEFAULT NULL COMMENT '视频高度',
  `cover_path` varchar(255) 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 CHARSET=utf8mb4 COMMENT='视频信息表';

8.用户举报表

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

项目的源码地址:https://github.com/LexBBQ/myVideo

  • 34
    点赞
  • 194
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
Java小程序开发文档是指为了方便程序员开发和维护Java小程序而编写的文档,通常包括以下内容: 1. 程序概述:介绍Java小程序的功能、目的和使用范围。 2. 环境配置:说明在开发Java小程序之前需要安装和配置的开发环境,包括JDK、开发工具和其他必要的软件。 3. 技术架构:描述Java小程序的整体架构,包括模块划分、组件设计和系统流程等。 4. 功能设计:详细描述Java小程序的功能需求和设计方案,包括用户需求分析、系统功能规格和特性描述等。 5. 代码规范:定义Java小程序的编码规范,包括命名规则、缩进格式、注释要求等。 6. 数据库设计:说明Java小程序的数据库设计,包括表结构、关联关系和数据字典等。 7. API文档:列出Java小程序的所有接口,包括输入输出参数、返回值和调用方法等。 8. 测试用例:提供Java小程序的测试用例,包括功能测试、性能测试和回归测试等。 9. 部署指南:说明Java小程序的部署方式和流程,包括打包发布、配置文件修改和服务器部署等。 10. 维护文档:为Java小程序的后续维护提供技术支持和操作指南,包括常见问题解答和故障处理手册等。 总之,Java小程序开发文档是开发团队合作的重要文档,它提供了全面的开发指导和技术支持,为Java小程序开发、测试和维护工作提供了重要参考。
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值