admin 管理员组

文章数量: 1086019


2024年2月5日发(作者:transport me)

信19与电2020年第22期China

Computer

&

Communication10较件看茨与惑用基于Spring微服务架构的音乐点播平台的设计与实现贾坤儒严张凌(四川大学锦城学院,四川成都

611731)摘要:为了实现对云端音乐的管理与可视化,满足更多用户的需求,本文构建了一个基于Spring

Boot的音乐点

播系统,系统为B/S架构,采用SpringBoot框架搭建后端微服务实例,使得系统能够拥有良好的稳定性、高效性和实时

性,也使得管理员对系统的管理变得更加简便-程序部署在阿里云端,方便用户远程访问.关键词:Spring

Boot框架;Spring

MVC;音乐点播系统中图分类号:TP311.56; TP316

文献标识码:A

文章编号:1003-9767

(2020)

22-105-02Design

and

ImplementationMicroservice

of

Music

on

Architecture

Demand

Platform

Based

on

Spring

JIA

Kunru,

YAN

Zhangling(Jincheng College

of

Sichuan

University,

Chengdu

Sichuan

611731,

China)Abstract:

In

order

to

realize

the

management

and

visualization

of

cloud

music

and

meet

the

needs

of

more

users,

this

paper

constructs

a

music

on

demand

system

based

on

spring

boot.

The

system

is

B

/

S

architecture,

and

uses

the

spring

boot

framework

to

build

a

back-end

micro

service

instance,

which

makes

the

system

have

good

stabil让*

efficiency

and

real-time,

and

also

makes

the

administrator's

management

of

the

system

easier.

The

program

is

deployed

in

Alibaba

cloud,

which

is

convenient

for

users

to

access

ds:

Spring

Boot framework;

Spring

MVC;

music

on

demand

system0引言下有着完善的MVC设计模型支持,对于项目的配置工作采

随着计算机技术的快速发展,音乐不再局限于磁带与唱

用自动化配置的方式,使得在SpringBoot环境下进行MVC

片,各种智能产品相继出现,能够更好地满足人们听音乐的

模式开发变得尤为简单Spring微服务管理范围主要分为

需求。目前,国内的音乐平台全部拥有很多功能,随意选择

三层,即API接口层、业务逻辑层以及数据持久层。一个平台进行使用,首先要做不是播放其中的音乐,而是学

1.2云服务器习如何使用这个平台,如果功能太多便不利于操作。为了提

升音乐平台的纯净感,为广大音乐爱好者提供一个高效、稳

登录阿里云官网并申请账号,就可以拥有自己的云主机,

定、干净的音乐播放环境,本文借助当前流行的Spring

MVC

并且进行安全规则等部署。通过Putty等工具连接阿里云与

框架技术,提出并实现了音乐播放平台设计与开发技术方案。服务器,完成相关配置后,将打包好的.jar文件上传并运行,

即可在浏览器中连接公网IP,访问部署好的项目。1系统关键技术2系统总体设计1.1

Spring

Boot微服务架构本系统主要面向中老年群体,总体任务是实现音乐点播

Spring

Boot微服务实际上是大量开源库的集合,自配

平台的纯净化、高效化、实时化。系统后端包括API接口、

Tomcat、Jetty容器,不需要部署WAR包,只需要在

数据库操作模块等。用户在本系统可以进行上传音乐、下载

中写好相关依赖,减少了系统开发的步骤。SpringBoot框架

音乐、搜索音乐以及在线播放等操作。与此同时,本系统还

作者简介:贾坤儒(2000-),男,四川绵阳人。研究方向:移动应用开发。严张凌(1980-),男,四川成都人,硕士研究生,副教授。研究方向:移动互联网应用、人工智能应用。105

软件打茨与龛用信与电China

Computer18

&

Communication162020年第22期要做到界面简洁、操作简便等,以保证用户能够获得较好的

然后编写音乐业务逻辑层,创建一个MusicService类,

使用体验。并在最外面添加一个"@Service"的注解,让这个java类纳

本系统收录的每一首音乐都需要有完整的信息,包

入Spring管理范围,因为业务逻辑层需要和数据库连接,所

括歌曲名、歌手、收录日期、发行日期、音乐时长、封

以在类里需要添加一个“@Autowired”注解,来注入数据持

面图片、作曲人、作词人和歌词等。对于上传音乐功能,

久层的MusicRepository类,并声明一个类的变量repo。到

需要绑定身份证,确定版权后再上传完整的音乐信息;

这里,就搭建好音乐业务逻辑层的框架。对于音乐下载功能,如果有要求可以设为付费模式,否

接着编写API接口层,先创建一个MusicController类,

则默认均为免费下载。播放一首歌曲时,界面上可根据

在最夕卜面添加一""@RestController"注解,让这个java类

个人喜好开启或关闭评论弹幕,同时也可以自己发布评

纳入Spring管理范围,并且添加一个"@RequestMapping"

论,采用弹幕的方式是为了使听歌者能实时发表自己的

注解,为下面的java方法定义一个统一的访问URL。“@

看法。登录注册功能是为了方便对使用客户进行管理,也能

RequestMapping"后有小括号,其括号里就是自定义的

存储用户的搜索记录,进行大数据分析,方便为每一位用户

URL,这里定义为“/music”。因为API接口层需要和业务

推荐其可能会喜爱的音乐。逻辑层连接,所以在类里需要添加一个“@Autowired”注解,

3系统总体实现来注入业务逻辑层的MusicService类,并声明一个类的变

本系统为B/S架构,采用Spring

Boot框架搭建后端微服

service□务实例,程序部署在阿里云端,方便用户和管理员远程访问。最后就是编写API接口以及对应业务逻辑层。数据库本

身包含一些基本的方法,但如果有需要自定义的方法,数据

第一步需要创建3个模型类,分别是音乐模型类、用户

模型类以及评论模型类。对于音乐模型类,需要先创建一个

持久层也要再进行编写,本文就只叙述一个API接口的实现

Music类,并定义一系列需求中的私有变量,譬如音乐唯一

流程。首先在MusicService类里定义一个List类,其泛型是

识别码(ID)、歌曲名、歌手名、作词人、作曲人、音乐收

Music类的方法"getAllMusic。",并且在方法里直接返回

录日期、音乐发行日期、音乐时长、音乐歌词、音乐音质、

一个“lO”,也就是返回数据库里查找到的所有

对应封面图片、对应URL和评论等。然后使用软件自带功能,

音乐列表。然后在MusicController类里定义一个List类,其

自动生成

Get、Set、hashcode>

equals,

toString

方法。对于

泛型是Music类的方法"getAllMusic()",在方法里直接返

用户模型类,需要创建一个User类,同样定义私有变量,如

回一个usic()",也就是返回数据库里查找

用户唯一识别码、用户名、用户密码、用户电话、用户性别、

到的所有音乐列表。最后是在MusicController类里的这个方

用户生日等,并自动生成Get、Set、hashcode、equals以及

法外添加"@GetMapping"注解,这个注解也是用来定义方

toString方法。这两个类最后必须加上”@Id”注解来声明此

法访问URL的,因为需要实现的功能是查找所有的音乐,

实体类的属性映射为数据库的主键列。对于评论模型类,需

所以在此使用的是"@GetMapping注解",后面如有需要也

要定义私有变量,如评论者、评论内容和评论时间等,同样

可以添加子URL。自动生成

Get、Set、hashcode、equals

以及

toString

方法,

4结语但不用添加“@id”注解。随着时代的发展,用户的个人需求总是在发生变化。但

第二步需要列出所有的API接口及对应的HTTP方法□

对于一些希望能纯粹听音乐的中老年用户,大多数音乐平台

一是搜索功能,搜索歌曲名、歌手、作词人、作曲人、获取

并不能满足需求,因此有必要设计一个操作简便的音乐平台。

未屏蔽评论都使用GET方法;二是删除音乐和评论,使用

笔者设计本系统的初衷便是希望提供一个更加纯粹的音乐播

DELETE方法;三是更新音乐,使用PUT方法;新增音乐和

放平台,希望这个平台能够满足中老年人群的需求。同时,

评论,使用POST方法。年轻用户仍需要更新鲜的功能,比如对一首歌进行评论,而

第三步需要先搭建三大结构的框架,由于音乐和用户分

国内大多数评论模块是用一个界面专门放置用户评论,甚至

别需要搭建不同的框架,但其原理相同,这里只分析如何搭

还可以对评论本身进行回复,从而经常会出现粉丝与黑粉相

建音乐部分。互争吵的现象,并且没有办法屏蔽或删除,这对于本系统的

首先编写音乐的数据持久层,创建一个MusicRepository

目标客户会有很大的影响。所以本系统采用弹幕机制,每个

类,因为还需要一个数据库,就选用MongoDB,所以还需

人都可以匿名发言,有利于净化网络空间,但弹幕的反馈机

要添加MongoDB的依赖,添加好后,先让MusicRepository

制还有待完善。继承

MongoRepository,再添加一个"@Repository"注解,

让这个java类纳入Spring管理范围。到这一步,数据持久层

参考文献的框架就搭好了,如果有有额外需求再添加代码,比如要查

[1]杜英魁,王杨,关屏,等.基于Spring

Boot的云

找某个歌手的所有歌,则需要定义一个泛型为Music类的列

端数据监控儈理与可视化应用系统[J].计算机系统应用,

表类型方法

”findBySinger()”。2020,29(5):123-127.106


本文标签: 音乐 系统 用户 需要 评论