本项目仅作技术交流--许多关键细节并没有实现不可上线运营代码内容主要由AI生成和测试项目概述MinX System 是一个全栈内容创作与变现平台支持创作者上传图文、视频、文章等多媒体内容通过订阅制 单次付费 多级访问控制实现知识变现。项目采用前后端分离架构后端基于 Spring Boot 3.3 Java 21前端基于 Vue 3 TypeScript Pinia已通过 38 个自动化测试代码量约 300 文件。GitHub: jianmin5xin/Minx技术栈一览层级技术选型后端框架Spring Boot 3.3.0语言版本Java 21数据库H2 (开发) / MySQL (生产)ORMSpring Data JPA Hibernate 6.5安全Spring Security JWT (双 Token 刷新)缓存Caffeine Cache搜索引擎Elasticsearch (可选)前端框架Vue 3 (Composition API)构建工具Vite 5语言TypeScript 5状态管理Pinia (13 个 Store)路由Vue Router 4 (懒加载 角色守卫)PWAvite-plugin-pwaDevOpsDocker CI/CD核心功能模块1. 用户与认证系统JWT 双 Token 机制Access Token短时效 Refresh Token长时效前端 Axios 拦截器自动检测 401 并静默刷新请求队列去重多角色体系ROLE_USER / ROLE_ADMIN路由级别守卫 API 级别PreAuthorize个人资料管理头像上传multipart、Bio、密码修改多标签同步Token 写入 localStorage 后通过storage事件跨标签同步登录态2. 资源管理与多级访问控制这是平台的核心差异化能力。每个资源支持四种访问类型访问类型规则适用场景PUBLIC任何人可查看免费引流内容LOGIN_REQUIRED需登录注册用户专享MEMBERS_ONLY需订阅作者粉丝专属内容PAID_ONLY需单独购买高价精品内容批量上传支持拖拽 多文件 进度回调三种资源类型IMAGE / VIDEO / ARTICLE内容审核流DRAFT → PENDING_REVIEW → PUBLISHED / REJECTED资源搜索关键词 类型 访问级别多维度筛选ES 全文搜索可选文件存储本地文件系统 缩略图自动生成3. 订阅制付费体系创作者可设置订阅价格subscriptionPrice并开启订阅功能用户购买订阅后获得该创作者全部 MEMBERS_ONLY 内容访问权支持订阅到期自动过期、退款等完整生命周期4. 微信/支付宝钱包系统v8.0 新增的完整钱包模块充值模拟微信/支付宝扫码充值可对接真实支付网关提现用户申请提现 → 管理员审核 → 审批通过/拒绝交易流水完整的 WalletTransaction 记录支持类型筛选余额管理充值、购买、退款、提现全链路余额变动追踪5. 直播系统多级访问控制PUBLIC / SUBSCRIBERS / PAID / FRIENDS直播购买付费直播支持单次购买后观看实时状态管理LiveStreamStore 管理直播列表与当前直播状态前端页面LiveStreamPage直播列表 LiveStreamViewer直播观看6. 评论与互动系统嵌套回复支持多层级回复前端递归渲染评论点赞独立点赞系统资源与评论分别管理用户屏蔽创作者可屏蔽特定用户评论评论分页后端分页 前端加载更多7. 消息与通知系统一对一私信对话列表 聊天气泡 回车发送 自动滚动到底部未读计数导航栏铃铛 Badge 实时显示通知类型评论回复、点赞、订阅、购买等事件通知冷消息限制未互关用户每天 3 条消息限额8. 管理后台仪表盘用户数、资源数、订单数、收入概览用户管理封禁/解封、强制删除资源审核待审核列表、通过/驳回、审核备注订单管理全部订单查看、退款处理举报处理举报列表、处理标记站点配置系统参数动态调整数据统计用户增长趋势、热门资源排行后端架构分层设计Controller 层 (24 个 REST 控制器) ↓ Service 层 (业务逻辑 事务管理) ↓ Repository 层 (Spring Data JPA 自定义查询) ↓ Entity 层 (JPA 实体映射)安全架构Client Request → CORS Filter → Rate Limit Filter (300 req/min) → JWT Authentication Filter → Authorization Filter (PreAuthorize) → Controller → Service → Repository关键控制器控制器端点前缀核心功能AuthController/api/auth注册、登录、Token 刷新ResourceController/api/resources资源 CRUD、搜索、审核PaymentController/api/payment微信/支付宝充值、提现WalletController/api/wallet钱包余额、交易流水LiveStreamController/api/livestreams直播创建、购买、观看CommentController/api/resources/{id}/comments评论、屏蔽、点赞SubscriptionController/api/subscriptions订阅管理OrderController/api/orders订单管理、退款AdminController/api/admin管理后台聚合接口StatisticsController/api/statistics数据统计前端架构分层设计Views (19 个页面视图) ↓ Components (40 个可复用组件) ↓ Composables (业务逻辑 Hook) ↓ Stores (13 个 Pinia 状态模块) ↓ API Layer (21 个 API 模块 Axios 拦截器) ↓ Types (12 个 TypeScript 类型模块)状态管理Store职责authStore用户认证、Token 管理、多标签同步resourceStore资源 CRUD、上传进度subscriptionStore订阅状态、订阅列表purchaseStore购买记录、购买检查commentStore评论分页、嵌套回复favoriteStore收藏状态、收藏列表likeStore点赞状态、点赞数notificationStore通知列表、未读数orderStore订单列表、订单状态walletStore钱包余额、充值、交易流水messageStore对话列表、消息发送subscribeStore订阅支付流程liveStreamStore直播管理、直播购买路由表部分路径页面需认证角色/资源列表首页否-/upload上传资源是USER/resource/:id资源详情否-/profile个人资料是USER/wallet钱包管理是USER/messages消息中心是USER/live直播广场否-/admin管理后台是ADMIN/statistics数据统计是ADMIN工程化与 DevOpsDocker 容器化后端 前端独立 Dockerfiledocker-compose 一键部署PWA 支持通过 vite-plugin-pwa 实现离线访问、桌面安装CI/CDGitHub Actions 自动化构建与测试代码质量结构化日志SLF4J、健康检查端点/actuator/health、Prometheus MetricsXSS 防护前端输出转义 安全 Headers知识图谱通过 Graphify 自动分析 2104 节点 / 2994 边的代码依赖关系测试覆盖后端测试38 个测试用例100% 通过访问控制集成测试Public/Login/Members/Paid 四种规则全覆盖支付系统测试JWT 认证流程测试前端测试15 个测试用例通过本地运行# 后端 cd backend mvn spring-boot:run # 启动在 localhost:8080 ​ # 前端 cd frontend npm install npm run dev # 启动在 localhost:5173默认测试账户admin/testuser/creator密码均为password路线图多级访问控制 (PUBLIC → PAID_ONLY)订阅制付费体系微信/支付宝钱包系统直播系统管理后台与数据统计Docker 部署 PWA 支持真实支付网关集成MySQL 生产环境迁移WebSocket 直播推流Elasticsearch 全文搜索优化MinX System 是一个从零独立构建的全栈项目涵盖内容平台几乎所有核心能力——从用户认证到内容管理从付费变现到直播系统从管理后台到数据统计。适合作为 Spring Boot Vue 3 全栈学习的参考项目也可直接作为内容社区/知识付费平台的起步模板。