Cyan Blog Cyan Blog
首页
  • Java (opens new window)
  • JUC (opens new window)
  • JVM (opens new window)
  • Redis

    • Redis安装 (opens new window)
    • Redis基础 (opens new window)
    • Redis实战 (opens new window)
    • Redis集群安装 (opens new window)
    • Redis分布式缓存 (opens new window)
    • Redis多级缓存 (opens new window)
    • Redis原理 (opens new window)
  • 管理工具

    • Maven (opens new window)
    • Git (opens new window)
  • SSM

    • Spring (opens new window)
    • SpringBoot (opens new window)
    • Mybatis (opens new window)
    • MybatisPlus (opens new window)
  • 微服务

    • Docker (opens new window)
    • RabbitMQ (opens new window)
    • SpringCloud (opens new window)
    • Dubbo (opens new window)
    • MongoDB (opens new window)
    • Zookeeper (opens new window)
  • Java面试题 (opens new window)
  • JUC面试题 (opens new window)
  • JVM面试题 (opens new window)
  • Linux面试题 (opens new window)
  • SQL面试题 (opens new window)
  • Maven面试题 (opens new window)
  • Redis面试题 (opens new window)
  • SSM面试题 (opens new window)
  • SpringCloud面试题 (opens new window)
  • Linux (opens new window)
  • C++ (opens new window)
  • 数据库

    • MySQL (opens new window)
    • NoSQL (opens new window)
  • 软件测试

    • 软件测试 (opens new window)
  • 加密解密 (opens new window)
  • bilibili字幕提取 (opens new window)
  • 道理 (opens new window)
  • 关于博主

    • Github (opens new window)
    • CSDN (opens new window)
  • 关于本站

    • 如何搭建博客网站 (opens new window)
首页
  • Java (opens new window)
  • JUC (opens new window)
  • JVM (opens new window)
  • Redis

    • Redis安装 (opens new window)
    • Redis基础 (opens new window)
    • Redis实战 (opens new window)
    • Redis集群安装 (opens new window)
    • Redis分布式缓存 (opens new window)
    • Redis多级缓存 (opens new window)
    • Redis原理 (opens new window)
  • 管理工具

    • Maven (opens new window)
    • Git (opens new window)
  • SSM

    • Spring (opens new window)
    • SpringBoot (opens new window)
    • Mybatis (opens new window)
    • MybatisPlus (opens new window)
  • 微服务

    • Docker (opens new window)
    • RabbitMQ (opens new window)
    • SpringCloud (opens new window)
    • Dubbo (opens new window)
    • MongoDB (opens new window)
    • Zookeeper (opens new window)
  • Java面试题 (opens new window)
  • JUC面试题 (opens new window)
  • JVM面试题 (opens new window)
  • Linux面试题 (opens new window)
  • SQL面试题 (opens new window)
  • Maven面试题 (opens new window)
  • Redis面试题 (opens new window)
  • SSM面试题 (opens new window)
  • SpringCloud面试题 (opens new window)
  • Linux (opens new window)
  • C++ (opens new window)
  • 数据库

    • MySQL (opens new window)
    • NoSQL (opens new window)
  • 软件测试

    • 软件测试 (opens new window)
  • 加密解密 (opens new window)
  • bilibili字幕提取 (opens new window)
  • 道理 (opens new window)
  • 关于博主

    • Github (opens new window)
    • CSDN (opens new window)
  • 关于本站

    • 如何搭建博客网站 (opens new window)
  • 校招VIP

    • Introduce
      • Java规范
      • 文档设计
      • 第一期
      • Java开发文档
    • java开发
目录

Introduce

推剪辑

第一期 剪辑安全播放模块

  1. 第三方上传的非法检测
  2. 存储和播放的防盗刷
  3. 播放性能的提高

第二期 弹幕评论模块

  • 视频不打开就可以显示弹幕

第三期 图集存储展示模块

第四期 首页电影推荐模块

核心功能要重要考虑和设计,不能有缺失,普通功能要用做,功能详细给出具体方案,要能做讲解,没有歧义

image-20250415184313243

# Java规范

# 3.1 controller接口对象必须要严格校验⭐

前端不可靠,必须校验

不用Validate注解

# 3.2 数据库设计规范

(1)数据表,除流水表外,需要有四个默认字段id,status,addTime和updateTime

C端项目默认字段 不允许出现isDelete

(2)id不允许出现bigint

(3)不允许使用外键

# 3.3 枚举类的使用⭐

(1)controller接口参数,需要使用enum来校验

(2)service层的接口,如果使用到枚举的id,参数需要使用枚举类;而mapper层不需要。即service是业务相关,而mapper层只与数据有关,与业务无关。

?

        // 业务逻辑校验(例如:只有 PENDING 可改为 PAID)
        if (status == OrderStatus.PAID) {
            checkInventory(orderId);
        }
        // 调用 Mapper 时,将枚举转换为 code
        orderMapper.updateStatus(orderId, status.getCode());

避免的坑

  • ❌ 不要在 Mapper 中直接传递枚举(如 OrderStatus),否则 MyBatis 可能序列化失败。
  • ❌ 不要依赖枚举的 ordinal()(默认序号),必须显式定义 code 字段,防止枚举顺序变更导致数据错乱。

# 3.5 设计文档和接口文档规范

(1)难点的解决方案,要先从正常量级分析打通全部流程;不允许整个流程没梳理清楚,上来就针对其中的一部分使用高大上的方案

​ 在实习工作中,就相当于时间白白浪费了

(2)接口文档,如果是对当前登录的用户进行操作,接口不要加userId参数

# 3.6 代码规范⭐

(1)service层不允许出现ResponseDO

(2)C端项目,除特定场景,错误码不能出现全局错误码

(3)分页和数据库查询不使用使用MP (不用硬性要求)

# 文档设计

包括设计文档和接口文档两部分

# 设计文档

要点:

(1) 亮点和难点部分,必须明确到解决方案(这是最重要的部分)

(2) 数据库设计:非流水表,需要包括4个默认字段

# 接口文档

要点:

(1) 请求参数要设计到位;但是返回数据因为在设计阶段,可以只把关键字段设计好

# 第一期

# 产品会

#

单个电影

image-20250415102612757

功能:

左右滑,需要数值,(不同排序的数值id)

时间:

​ 后端直接给时间,前端自己算

排序接口:

排序项,不要加pagesize,写死

参考抖音,更像b站

image-20250415103343433

重点:防盗,防录屏,滑动水印

防下载,尝试哪个方案

亮点

做完的文档要评审

评论是第二期

# Java开发文档

必须明确到解决方案(这是最重要的部分)

上次更新: 2025/6/10 17:21:17
java开发

java开发→

最近更新
01
md
06-10
02
Redis
06-10
03
HBase
06-10
更多文章>
Theme by Vdoing | Copyright © 2025-2025 Cyan Blog
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式