aigcbilibili/aigcbilibili · 上手攻略

  • 仓库:aigcbilibili/aigcbilibili
  • 链接:https://github.com/aigcbilibili/aigcbilibili
  • 分类:实战项目 · Java · 全栈
  • 作者:Tom
  • 更新:2026-08-27

是什么

aigcbilibili 是一个仿哔哩哔哩(B站)前后端全栈实现项目,技术栈覆盖 Spring Boot 单体开发 + Spring Cloud 微服务架构,目标用户是 Java 求职者——通过完整还原 B 站核心功能(视频上传、弹幕、评论、私信等),在简历中展示比黑马/尚硅谷教程更稀缺、更真实的项目经验。

项目配套详细部署教程和现成简历话术,适合快速在本地跑通并在简历中呈现。


解决什么问题

Java 就业市场竞争激烈,黑马、尚硅谷等教程项目高度同质化,HR 和面试官见到简历写这些项目往往直接跳过。本项目解决的核心痛点:

  1. 项目差异化:一比一复刻 B 站真实功能(弹幕、分片上传、私聊等),而非教学级 CRUD
  2. 技术栈广度:单体(Spring Boot)+ 微服务(Spring Cloud)+ 中间件(Redis/RocketMQ/ES),覆盖校招/社招JD全要求
  3. 面试引导:技术亮点多,可供面试官深挖的问题多,简历话术现成
  4. 快速落地:提供完整从零部署到接口调通的教程,无需前端基础

快速安装

⚠️ 本项目为真实前后端代码,非 H5 或 Electron 套壳,需要一定 Java 环境配置能力。

环境要求

  • JDK 8+(推荐 JDK 11)
  • Maven
  • Node.js(前端)
  • MySQL
  • Redis
  • Nacos(服务注册发现)
  • RocketMQ
  • Elasticsearch
  • MinIO(对象存储,替代 S3)
  • 讯飞星火 API(AI 功能)

快速启动(详细步骤见项目 README)

# 1. 克隆项目
git clone https://github.com/aigcbilibili/aigcbilibili.git
cd aigcbilibili

# 2. 后端:修改 application.yml 中的数据库/中间件连接信息
# 数据库、Redis、RocketMQ、ES、Nacos、MinIO 等地址需配置为本地或远程实际地址

# 3. 按顺序启动中间件(Docker 方式示例)
docker run -d --name mysql -p 3306:3306 mysql:8.0
docker run -d --name redis -p 6379:6379 redis:7
docker run -d --name nacos -p 8848:8848 nacos/nacos-server:v2.2.0
# ... 其他中间件类似

# 4. 启动后端
mvn clean package -DskipTests
java -jar target/*.jar

# 5. 前端:运行项目自带教程提供的现成资源包(作者文件床直链)
# 或按教程配置 Node.js 前端环境后启动

⚠️ 完整中间件链路(MySQL + Redis + Nacos + RocketMQ + Elasticsearch + MinIO + 讯飞星火 + XXL-Job + Zipkin)较多,强烈建议使用作者提供的一键环境包或详细文档减少踩坑。

视频上传注意

项目使用分片上传 + 断点续传(百兆以上大文件场景)。本地测试需要 MinIO 配置正确,否则上传接口会报 500。


核心功能一览

功能 说明
视频上传 分片上传 + 断点续传,支持大文件
弹幕 实时弹幕系统(WebSocket)
视频播放 视频查看、点赞、评论、收藏
用户体系 注册登录(图形码/手机号/邮箱)、个人信息、个人主页、关注
实时私信 一对一 WebSocket 实时私聊
AI 功能 文生文、文生图、智能 PPT(集成讯飞星火 API)
搜索 视频/用户聚合搜索、关键字补全、高亮
消息推送 关注 UP 动态、评论点赞私聊消息推送
分布式任务 XXL-Job 定时任务(视频转码等)
链路追踪 Zipkin + Sleuth 请求全链路可视化

技术架构

后端技术栈

Spring Boot         # 单体入口,保证下限
Spring Cloud        # 微服务(网关/Feign/Nacos)
Spring Security     # 鉴权授权(JWT)
MyBatis-Plus        # 单表 CRUD
MyBatis-Plus-Join   # 多表连表查询
Druid               # 阿里数据库连接池
Redis               # 分布式缓存
RocketMQ            # 异步消息队列
Elasticsearch       # 搜索(关键字高亮/补全)
MinIO               # 对象存储(替代 S3)
WebSocket           # 实时私信/弹幕
JWT                 # Token 鉴权
Swagger             # 接口文档
Hutool              # 工具类集合
Jave                # 视频处理(转码/压缩/截图/去水印)
XXL-Job             # 分布式定时任务
Zipkin + Sleuth     # 链路追踪
讯飞星火 API        # 大模型能力接入

前端技术栈

项目 README 未详细列出前端技术栈,根据功能推断为 Vue/React 配合主流 UI 框架(具体以项目实际文件为准)。

微服务架构(Spring Cloud)

gateway              # 请求入口 + 路由
nacos                # 服务注册与发现
openfeign            # 服务间远程调用

典型适用场景

场景 说明
Java 校招/社招简历项目 项目差异化强,技术栈全,面试官愿意深挖
Spring Cloud 微服务学习 完整 Nacos + Feign + Gateway 实践
中间件综合实践 Redis/RocketMQ/ES/MinIO 真实项目串联
分布式系统理解 链路追踪、分片上传、定时任务在真实场景的应用
AI 功能集成 讯飞星火 API 接入,文生文/文生图/PPT 自动生成

坑与注意

⚠️ 中间件链路复杂

本项目涉及 7+ 中间件,本地完整启动门槛较高。建议严格按项目 README 的从零部署教程操作,不要跳过任何步骤。推荐先在有足够内存(16GB+)的机器上运行。

⚠️ 视频上传依赖 MinIO

本地测试视频上传功能,需要正确配置 MinIO(对象存储)。若 MinIO 未运行或配置错误,上传接口返回 500 而非友好错误提示。

⚠️ 讯飞星火 API 需要申请

AI 功能(文生文、文生图、智能 PPT)依赖讯飞星火 API Key,需在 讯飞开放平台 申请。免费额度有限,生产使用需付费。

⚠️ 项目地址可能变动

README 中项目地址为 labilibili.com(作者自己的站点),GitHub 仓库为 aigcbilibili/aigcbilibili。如有 404,优先确认最新仓库地址。

⚠️ 简历话术使用边界

作者提供的简历话术是通用版本,建议根据自身实际参与程度调整,避免面试时被追问露馅。项目亮点足够多时,选择性呈现 3-5 个核心亮点比堆砌全部功能更有说服力。

环境依赖版本

项目较长时间未更新(Stars 675,但最后活动时间不详)。若 JDK/Maven/中间件版本与当前主流不兼容,需要自行调整依赖版本。建议优先使用 JDK 11 + Maven 3.8+。


与同类对比

项目 技术栈 微服务 AI 功能 亮点密度 教程完整度
aigcbilibili Spring Boot + Spring Cloud + 9 种中间件 ✅ Nacos/Feign/Gateway ✅ 讯飞星火(文生文/图/PPT) 高(分片上传、断点续传、私聊、弹幕等) 完整(部署+简历话术)
黑马/尚硅谷 B站项目 Spring Boot + SSM 一般
仿微信/外卖项目 Spring Boot + Redis 一般

本项目核心差异:是目前少有的微服务架构 + 真实中间件串联 + AI 功能集成的 Java 校招项目,且配套完整简历话术,不是课堂级 CRUD 演示。


一句话结论

Java 求职者想要一个差异化强、技术栈全、能引导面试官深挖亮点的简历项目,aigcbilibili 是技术广度(微服务 + 10+ 中间件)和功能真实性(B站弹幕/分片上传/实时私聊)兼备的实战项目;但完整启动依赖 7+ 中间件,建议严格按文档步骤部署,避免卡在环境配置上。