java基于spingboot+vue音乐网站的设计与实现-毕业设计

收藏关注不迷路,源码文章末


前言

  随着计算机网络技术的发展,音乐网站系统正逐渐的渗透到各个领域,网络化和信息化的发展也促进了Web网页应用和技术的快速发展。音乐网站正是在这样的前提下而产生的,人们通过互联网给日常生活增添了很大的乐趣,让人们在工作之后可以进行休闲的娱乐。
  因为宽带用户的增加,带动了音乐网站产业的蓬勃兴起。无论国内还是国外,音乐网站市场都呈现一派生气,近年来,全球数字娱乐业持续发展。网络传播以其特有的快速、高效、便捷的传输方式被人们所接受,越来越多的走进了大家。并 且在当今音乐浪潮的影响下,随着音乐事业逐渐走向高峰,音乐已无处不在,音乐己与我们密不可分。全球数字娱乐业的迅猛发展、网络电视等,无不充斥着激烈的竞争。音乐网站在这种背景下逐渐发展起来。音乐网站改变了传统音乐产业的产业结构。而现在许多音乐网站不能提供在线播放,并且在技术支持上也不完善。于是设计和实现这样一个音乐网站就成为了必须,不仅仅满足用户的可以试听音乐的功能,而且还要保证在速度上不能慢,更要在功能和性能上满足用户更多的体验和需求

一、项目介绍

  伴随着时间的推移,我们国家的科技进步速度明显加快。对于音乐界来说,它必须要在当今社会的大背景下,对其经营体制进行改革,这样才能与时俱进。但是,音乐网站是一个比较复杂的工作,它牵扯到多个组织,多个层次,多个层次,因此,这个工作流程要求一个完整的管理体系,一个完整的工作流程。本文在具体的研究中,从多个角度出发,对目前在音乐管理中,音乐网站的使用中所出现的问题进行了剖析,并说明了应该怎样设计和使用管理系统的架构。在 Springboot的基础上进行音乐站点的开发和使用,可以有效地提升音乐站点的服务质量。而音乐站点的设计和优化,就是从音乐的角度出发,利用 Web服务器来对其进行功能的设计,以此实现音乐网站的应用水平提升。
  随着互联网、信息化的发展,互联网的出现,互联网的出现,使得互联网的应用与技术得到了迅速的发展。在这种背景下,音乐网站应运而生,它为我们的日常生活增加了很多的趣味,也为我们在工作之余提供了一种消遣。
  正是由于宽频上网的人越来越多,才导致了这个行业的繁荣。不管是在国内外,音乐站点的市场表现出了蓬勃的生机。由于其独特的快速,高效,方便的特点,使得它更容易被大众所接纳,并逐渐走向大众。而如今,在这股音乐大潮的冲击下,伴随着音乐的事业逐步达到顶峰,已经无所不在,而与我们自己也是息息相关的。随着世界范围内的数码娱乐产业的迅速发展,网络电视的普及,网络电视的普及等,都充满了激烈的竞争。正是在这样的大环境下,音乐网站才得以蓬勃发展。而在此基础上,本文提出了一种新的发展思路。而且目前很多的音乐站点都无法进行网络直播,而且没有足够的技术支撑。所以,对这样一个音乐网站进行设计和实现就变得非常有必要了,它不但要让用户能够尝试到它,同时也要让它的运行速度不能太快,更要在功能和性能上,让用户能够有更多的体验和需要。

二、开发环境

开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven
————————————————

三、功能介绍

  (1)注册模块:普通用户可以在次注册,填写相关的信息,注册成功后可以享受本网站的所有信息资料,也可在此进行试听和下载音乐,并可以对试听过的音乐进行留言。
(2)音乐盒模块:在这里用户可以对在网站里的一切音乐,随意试听。并将自己喜欢的音乐加入到音乐盒中。
(3)短信息模块:此模块显示了如果其他用户给你发送短消息,你可以点此查看,并可以在此界面进行回复。
(4)分享音乐模块:注册过的用户可以点此进入,进行上传音乐。
(5)播放列表模块:播放过的音乐会存在此页面上。
后台功能设计
根据前面的系统的系统功能分析中,可将后台功能划分成7个模块。
后台功能设计模块
后台功能模块描述:
(1)登录模块:是管理员的登录界面,用于管理员的登录。
(2)后台首页模块:显示网站名称和制作人。
(3)音乐管理:对一些不满意的音乐可以进行删除;也可以了解音乐的情况(包括歌名、歌手、所属专辑、简介等)。
(4)友情链接:添加链接的网站名称和地址。
(5)用户管理:可以对注册过的用户进行删除。
(6)添加管理员:此模块显示了管理员可以根据音乐网站的实际情况进行添加一些管理员,方便管理。
(7)修改密码:可以在这个模块对管理员的密码进行修改。

在这里插入图片描述

四、核心代码

部分代码:

package com.example.controller;

import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.Caiwu;
import com.example.exception.CustomException;
import com.example.service.CaiwuService;
import com.example.utils.MapWrapperUtils;
import com.example.utils.jwt.JwtUtil;
import com.example.vo.CaiwuVo;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping(value = "/caiwu")
public class CaiwuController {

    @Resource
    private CaiwuService caiwuService;

    @PostMapping
    public Result<Caiwu> add(@RequestBody CaiwuVo caiwu) {
        caiwuService.add(caiwu);
           return Result.success(caiwu);
    }
	
	

    @PostMapping("/deleteList")
    public Result<Caiwu> deleteList(@RequestBody CaiwuVo caiwu) {
        caiwuService.deleteList(caiwu.getList());
        return Result.success();
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
        caiwuService.delete(id);
        return Result.success();
    }

    @PutMapping
    public Result update(@RequestBody CaiwuVo caiwu) {
        caiwuService.update(caiwu);
        return Result.success();
    }

    @GetMapping("/{id}")
    public Result<Caiwu> detail(@PathVariable Integer id) {
        Caiwu caiwu = caiwuService.findById(id);
        return Result.success(caiwu);
    }

    @GetMapping
    public Result<List<Caiwu>> all() {
        return Result.success(caiwuService.list());
    }

    @PostMapping("/page")
    public Result<CaiwuVo> page(@RequestBody CaiwuVo caiwuVo) {
        return Result.success(caiwuService.findPage(caiwuVo));
    }
	    @PostMapping("/login")
    public Result login(@RequestBody Caiwu caiwu, HttpServletRequest request) {
        if (StrUtil.isBlank(caiwu.getZhanghao()) || StrUtil.isBlank(caiwu.getMima())) {
            throw new CustomException(ResultCode.PARAM_LOST_ERROR);
        }
        Caiwu login = caiwuService.login(caiwu);
//        if(!login.getStatus()){
//            return Result.error("1001","状态限制,无法登录系统");
//        }
        if(login != null) {
            HashMap hashMap = new HashMap();
            hashMap.put("user", login);
            Map<String, Object> map = MapWrapperUtils.builder(MapWrapperUtils.KEY_USER_ID,caiwu.getId());
            String token = JwtUtil.creatToken(map);
            hashMap.put("token", token);
            return Result.success(hashMap);
        }else {
            return Result.error();
        }
    }
    @PutMapping("/updatePassword")
    public Result updatePassword(@RequestBody Caiwu info, HttpServletRequest request) {
        Caiwu caiwu = caiwuService.findById(info.getId());
        String oldPassword = SecureUtil.md5(info.getMima());
        if (!oldPassword.equals(caiwu.getMima())) {
            return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
        }
        info.setMima(SecureUtil.md5(info.getNewPassword()));
        Caiwu caiwu1 = new Caiwu();
        BeanUtils.copyProperties(info, caiwu1);
        caiwuService.update(caiwu1);
        return Result.success();
    }
}

五、效果图

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述

请添加图片描述
请添加图片描述

六、文章目录

目 录
第一章 绪 论 1
1.1背景及意义 1
1.2国内外研究概况 2
1.3 研究的内容 2
第二章 关键技术的研究 3
2.1 相关技术 3
2.2 Java技术 3
2.3 ECLIPSE 开发环境 4
2.4 Tomcat介绍 4
2.5 Spring Boot框架 5
第三章 系统分析 5
3.1 系统设计目标 6
3.2 系统可行性分析 6
3.3 系统功能分析和描述 7
3.4系统UML用例分析 8
3.4.1管理员用例 9
3.4.2用户用例 9
3.5系统流程分析 10
3.5.1添加信息流程 11
3.5.2操作流程 12
3.5.3删除信息流程 13
第四章 系统设计 14
4.1 系统体系结构 15
4.2 数据库设计原则 16
4.3 数据表 17
第五章 系统实现 18
5.1用户功能模块 18
5.2管理员功能模块 19
5.3用户功能模块 19
5.4前台首页功能模块 19
第六章 系统测试 20
6.1测试定义及目的 21
6.2性能测试 22
6.3测试模块 23
6.4测试结果 24
总 结 25
致 谢 27

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

QQ1039692211

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值