# 音乐播放应用系统 ## 项目概述 这是一个功能完整的音乐播放应用系统,包含前后端两部分。系统支持用户注册登录、音乐播放、歌单管理、歌手管理、评论互动等功能,为用户提供全面的音乐体验。 ### 系统架构 本项目采用前后端分离架构: - 前端:基于Vue 3的单页面应用 - 后端:基于Spring Boot的RESTful API服务 - 数据库:MySQL关系型数据库 - 缓存:Redis缓存服务 ## 技术栈 ### 后端技术栈 - **核心框架**:Spring Boot 3.x - **ORM框架**:Spring Data JPA + Hibernate - **安全认证**:Sa-Token - **数据库**:MySQL 8.x - **缓存**:Redis - **API文档**:Knife4j/Swagger - **文件处理**:自定义文件上传服务 ### 前端技术栈 - **核心框架**:Vue 3 (组合式API) - **构建工具**:Vite - **状态管理**:Pinia - **UI组件**:Element Plus - **路由管理**:Vue Router - **HTTP请求**:Axios - **音频处理**:Web Audio API ## 功能模块 ### 1. 用户系统 - 用户注册与登录 - 个人信息管理 - 收藏管理(音乐、歌单、歌手) - 播放历史记录 - 权限控制(普通用户/管理员) ### 2. 音乐播放系统 - 音乐播放、暂停、上一首、下一首 - 播放列表管理 - 播放模式(顺序播放、单曲循环、列表循环) - 歌词同步显示 - 进度控制与音量调节 - 播放统计 ### 3. 音乐管理系统 - 音乐上传与编辑 - 音乐分类管理 - 音乐搜索 - 热门音乐推荐 - 最新音乐展示 ### 4. 歌手管理系统 - 歌手信息管理 - 歌手分类 - 歌手音乐关联 - 歌手搜索 ### 5. 歌单管理系统 - 歌单创建与编辑 - 歌单分类 - 歌单音乐管理 - 歌单收藏 - 官方推荐歌单 ### 6. 评论系统 - 发表评论 - 回复评论 - 评论管理 ### 7. 首页推荐系统 - 轮播图展示 - 热门音乐推荐 - 最新音乐展示 - 推荐歌单 - 热门歌手 ## 数据模型 ### 核心实体 1. **用户(User)**:用户基本信息 2. **音乐(Music)**:音乐信息、文件路径、歌词 3. **歌手(Singer)**:歌手信息 4. **歌单(Playlist)**:歌单信息 5. **评论(Comment)**:评论内容 6. **类型(Type)**:音乐类型、歌手类型、歌单类型 7. **轮播图(Banner)**:首页轮播图 ### 核心关系 1. **用户-音乐**:收藏关系、播放历史 2. **用户-歌单**:创建关系、收藏关系 3. **用户-歌手**:收藏关系 4. **音乐-歌手**:多对多关系 5. **音乐-类型**:多对多关系 6. **歌单-音乐**:多对多关系 7. **歌手-类型**:多对一关系 8. **歌单-类型**:多对一关系 ## 部署指南 ### 环境要求 - JDK 17+ - Node.js 16+ - MySQL 8.x - Redis 6.x ### 后端部署 1. 配置数据库 ```sql CREATE DATABASE music_db CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; ``` 2. 修改配置文件 - 编辑 `music-houduan/src/main/resources/application.yml` - 配置数据库连接信息 - 配置Redis连接信息 - 配置文件上传路径 3. 构建项目 ```bash cd music-houduan mvn clean package -DskipTests ``` 4. 运行项目 ```bash java -jar target/music-houduan-1.0.0.jar ``` ### 前端部署 1. 安装依赖 ```bash cd music-qianduan npm install ``` 2. 修改配置 - 编辑 `.env` 文件,配置API地址 3. 构建项目 ```bash npm run build ``` 4. 部署静态资源 - 将 `dist` 目录下的文件部署到Web服务器 ## 使用说明 ### 管理员账号 - 用户名:admin - 密码:123456 ### 普通用户 - 可以自行注册或使用以下测试账号: - 用户名:test - 密码:123456 ### 基本操作流程 1. **音乐播放** - 在首页或音乐列表页选择音乐 - 点击播放按钮开始播放 - 使用播放器控制播放进度、音量等 2. **歌单管理** - 登录后可创建个人歌单 - 添加音乐到歌单 - 收藏其他用户的歌单 3. **音乐上传(管理员)** - 登录管理员账号 - 进入后台管理 - 上传音乐文件和封面 4. **评论互动** - 在音乐、歌单、歌手详情页发表评论 - 回复其他用户的评论 ## 系统截图 (此处可添加系统主要页面的截图) ## 开发团队 - 前端开发:XXX - 后端开发:XXX - 产品设计:XXX - 测试:XXX ## 版权声明 本项目仅用于学习和演示目的,不得用于商业用途。音乐文件版权归原作者所有。 ## 联系方式 如有问题或建议,请联系:example@example.com