音乐网站 Ccmusic-server服务端 说明文档

Posted 是Cc哈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了音乐网站 Ccmusic-server服务端 说明文档相关的知识,希望对你有一定的参考价值。

一、开发环境

  1. 操作系统:windows 10
  2. JDK: jdk-8u141
  3. mysql: mysql-5.7
  4. IDE: IntelliJ IDEA 2020
  5. Maven: maven-3.6.1
  6. 技术框架:springboot、mybatis

二、功能模块

三、数据库设计

admin: 管理员信息表

字段类型说明
idintid
namevarchar账号
passwordvarchar密码

consumer: 用户信息表

字段类型说明
idintid
usernamevarchar账号
passwordvarchar密码
sextinyint性别(1男0女)
phone_numchar电话
emailchar邮箱
birthdatetime生日
introductionvarchar签名
locationvarchar地区
avatorvarchar头像
create_timedatetime创建时间
update_timedatetime更新时间

collect: 收藏表

字段类型说明
idintid
user_idint账号
typetinyint密码
song_idint歌曲id
song_sheet_idint歌单id
create_timedatetime收藏时间

comment: 评论表

字段类型说明
idintid
user_idint用户id
typetinyint评论类型(0歌曲1歌单)
song_idint歌曲id
song_sheet_idint歌单id
contentvarchar评论内容
create_timedatetime收藏时间
upint评论点赞数

rank: 评分表

字段类型说明
idintid
song_sheet_idint歌单id
consumer_idint用户id
scoreint评分

sheet_song: 歌单-歌曲 对应关系表(多对多)

字段类型说明
idintid
song_sheet_idint歌单id
song_idint歌曲id

singer: 歌手信息表

字段类型说明
idintid
namevarchar姓名
sextinyint性别(0女1男2组合)
picvarchar头像
birthdatetime生日
locationvarchar地区
introductionvarchar简介

song: 歌曲信息表

字段类型说明
idintid
singer_idint歌手id
namevarchar姓名
introductionvarchar简介
create_timedatetime创建时间
update_timedatetime更新时间
picvarchar歌曲图片
lyrictext歌词
urlvarchar歌曲地址

song_sheet: 歌单信息表

字段类型说明
idintid
titlevarchar标题
picvarchar歌单图片
introductiontext简介
stylevarchar风格

三、项目结构
├── avatorImages // 用户头像
├── img
│ ├── singerPic // 歌手图片
│ ├── songSheetPic // 歌单图片
│ └── songPic // 歌曲图片
├── song // 存放歌曲
├── src
│ ├── main
│ │ ├── java
│ │ │ └── com.chenchen.ccmusic
│ │ │ ├── common// 公共(id生成器、返回结果集)
│ │ │ ├── config // 配置(跨域)
│ │ │ ├── controller // 控制层,接收请求返回响应
│ │ │ ├── dao // 数据操作层
│ │ │ ├── domain // 实体类
│ │ │ ├── service
│ │ │ │ └── impl // Service 层的接口
│ │ │ └── CcmusicApplication.java // 项目入口
│ │ └── resources
│ │ ├── mapper // mapper.xml文件,操作数据库
│ │ ├── static // 存放静态资源
│ │ ├── templates
│ │ ├── application.properties // 连接数据库
│ └── test
│ └── java
│ └── com.example.demo // 测试用的
├── pom.xml // 添加相关依赖和插件
└── target

四、开发思路

采用SpringMVC,当前端要访问数据的时候后端就提供相应接口,接口的编写是通过 Controller 层监听请求, 数据的处理交给 Service 层,而 Service 层再通过 Dao 层操作数据库,操作完成后数据再一层层往上走,最后返回给前端。

五、pom依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.7.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.chenchen</groupId>
    <artifactId>ccmusic</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>ccmusic</name>
    <description>音乐网站</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.10</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.47</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <executable>true</executable>
                    <fork>true</fork>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>

六、项目github地址
https://github.com/chenchen9331/ccmusic-server

以上是关于音乐网站 Ccmusic-server服务端 说明文档的主要内容,如果未能解决你的问题,请参考以下文章

从0开始 独立完成企业级java电商网站服务端开发长期维护(服务端)

从0开始 独立完成企业级java电商网站服务端开发长期维护(服务端)

从0开始 独立完成企业级Java电商网站开发(服务端)

推荐一个SpringBoot + Vue + MyBatis 音乐网站项目

VisualSVN 钩子脚本实现网站自动更新

如何搭建网页游戏服务器及需要安装啥程序,最好详细说明。