前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >【从0做项目】Java音缘心动(1)———项目介绍&设计

【从0做项目】Java音缘心动(1)———项目介绍&设计

作者头像
三三是该溜子
发布2025-02-22 19:41:48
发布2025-02-22 19:41:48
6700
代码可运行
举报
文章被收录于专栏:该溜子的专栏该溜子的专栏
运行总次数:0
代码可运行

零:项目结果展示

项目目前已经上线

音乐播放器登录页面铁子们可以后台私信获取管理员用户和密码

一:音乐播放器Web网页介绍

这个网页主要的功能包括:用户登录,上传音乐,播放音乐,收藏音乐到喜欢列表,从喜欢列表中移除音乐,删除指定音乐,批量删除音乐,

二:前期准备工作&项目设计

1:数据库设计

这里我们设计三个表

(1)喜欢的音乐——lovemusic

(2)普通存储的音乐——music

(3)用户信息——user

2:sql语句

代码语言:javascript
代码运行次数:0
复制
-- 数据库
drop database if exists musicserver;
create database if not exists musicserver character set utf8;
-- 使⽤数据库
use musicserver;
-- 创建表user
DROP TABLE IF EXISTS user;
CREATE TABLE user (
id INT PRIMARY KEY AUTO_INCREMENT,
username varchar(20) NOT NULL,
password varchar(255) NOT NULL
);
INSERT INTO user(username,password)
VALUES("bit","$2a$10$Bs4wNEkledVlGZa6wSfX7eCSD7wRMO0eUwkJH0WyhXzKQJrnk85li");
-- 创建表music
DROP TABLE IF EXISTS music;
CREATE TABLE music (
id int PRIMARY KEY AUTO_INCREMENT,
title varchar(50) NOT NULL,
singer varchar(30) NOT NULL,
time varchar(13) NOT NULL,
url varchar(1000) NOT NULL,
userid int(11) NOT NULL
);
-- title字段为歌曲名称,url字段为歌曲的路径
-- 创建中间表lovemusic
DROP TABLE IF EXISTS lovemusic;
CREATE TABLE lovemusic (
id int PRIMARY KEY AUTO_INCREMENT,
user_id int(11) NOT NULL,
music_id int(11) NOT NULL
);

3:后端开发使用SSM架构

简单介绍一下SSM指Spring、SpringMVC、Mybatis

(1)Spring

Spring是现在主流的Java开发框架,Spring提供了很多开源项目,这些项目都是基于Spring Framework 开发的,但是这玩意配置多,难上手,Spring就搞了个SpringBoot,门槛低上手快,适合我这种小白~

(2)SpringMVC

MVC是一种思想,即视图,控制器,模型。

SpringMVC基于这种思想把Web开发前后端进行分离,前端干前端的活,后端干后端的活。即表现层,业务逻辑层,数据持久层

后端应用分层就为:控制层Controller,业务逻辑层Service,数据持久层Dao

(3)Mybatis

这是一个持久层框架,理解成我们高中学过的映射比较好。

这一层代码主要的工作就相当于一个桥梁,一个中间商,把我们后端的数据和数据库中的数据联系在一起

Java中主要实现方式是通过接口实现——映射方式有注解和XML的方式

注解的方式是Spring特有的,简化了代码。XML的方式是老的方式,虽然有点麻烦但并不过时,当使用一些update等语句的时候,XML就是神!!

4:应用分层

(1)Controller层

接收前端请求,以及返回响应

(2)Service层

数据处理层,负责具体的业务逻辑

(3)Mapper层

数据访问层,

其它的model实体,config配置,constant常量,interceptor拦截器,tools工具等包后续会详细介绍

5:yml配置相关

强调配置

servlet multipart max-file-size 指的是限制最大上传文件的大小不能超过15MB

max-request-size指的是HTTP请求体积最大不能超过100MB

代码语言:javascript
代码运行次数:0
复制
spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/musicserver?characterEncoding=utf8&useSSL=false
    username: root
    password: 613718long
    driver-class-name: com.mysql.cj.jdbc.Driver
  servlet:
    multipart:
      max-file-size: 15MB
      max-request-size: 100MB
  mvc:
    favicon:
      enable: false

# 设置 Mybatis 的 xml 保存路径
mybatis:
  mapper-locations: classpath:mybatis/*Mapper.xml
  configuration: # 配置打印 MyBatis 执行的 SQL
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    map-underscore-to-camel-case: true  #自动驼峰转换
# 配置打印 MyBatis 执行的 SQL
logging:
  file:
    name: logs/springboot.log
  logback:
    rollingpolicy:
      max-file-size: 1KB
      file-name-pattern: ${LOG_FILE}.%d{yyyy-MM-dd}.%i
  level:
    com:
      example:
        demo: debug
music:
  local:
    path: "D:/music/"

#debug: true
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-02-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 零:项目结果展示
  • 一:音乐播放器Web网页介绍
  • 二:前期准备工作&项目设计
    • 1:数据库设计
    • (1)喜欢的音乐——lovemusic
    • (2)普通存储的音乐——music
    • (3)用户信息——user
    • 2:sql语句
    • 3:后端开发使用SSM架构
      • (1)Spring
      • (2)SpringMVC
      • (3)Mybatis
    • 4:应用分层
      • (1)Controller层
      • (2)Service层
      • (3)Mapper层
    • 5:yml配置相关
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档