【Python音乐平台】(免费领源码+演示录像)|可做计算机毕设Java、Python、PHP、小程序APP、C#、爬虫大数据、单片机、文案

摘  要

技术的成熟和普及,势必会给人们的生活方式带来不同程度的改变。越来越多的经营模式中都少不了线上运营,互联正强力推动着社会和经济发展国人对民族文化的自信和不同文化的包容再加上音乐行业的发展,如此繁荣吸引了越多越多的人。一套完备的基于微信小程序的音乐平台可以实现让用户又快又准找到自己喜欢的音乐,同时也是从侧面促使音乐经济的稳定发展。

本论文主要完成不同用户的权限划分,不同用户具有不同权限的操作功能,在用户模块,主要有用户进行注册和登录,用户可以实现对热门歌曲、音乐资讯、留言板、修改个人信息等;在管理员模块,管理员可以对用户、音乐类型、热门歌曲、留言板、系统管理等进行相应的操作。

关键词音乐平台;B/S架构;Spring Boot框架

Abstract

The maturity and popularization of technology will inevitably bring changes to people's way of life to varying degrees. More and more business models include online operations, and the Internet is strongly driving social and economic development. Chinese people's confidence in national culture and tolerance of different cultures, coupled with the development of the music industry, such prosperity has attracted more and more people. A complete set of music recommendation system based on collaborative filtering can enable users to find their favorite music quickly and accurately, and also promote the stable development of music economy from the side.

This paper mainly completes the division of permissions of different users, different users have different permissions of the operation function, in the user module, the main user registration and login, users can realize the popular songs, music information, message board, modify personal information and so on; In the administrator module, administrators can perform corresponding operations on users, music types, hot songs, message boards, system management, etc.

Key words: music recommendation system; B/S architecture; Spring Boot framework;

目  录

摘  要

Abstract

1 绪  论

1.1研究背景

1.2 研究意义

1.3国内外研究现状

1.4本文组织结构

1.5基于协同过滤的推荐算法

2 技术介绍

2.1 Spring Boot框架介绍

2.2 Java语言

2.3 Mysql的特点

2.4 B/S架构

2.5本章小结

3需求分析

3.1可行性分析

3.1.1经济可行性

3.1.2技术可行性 8

3.1.3运营可行性 8

3.1.4法律可行性 8

3.2系统需求分析

3.2.1 性能需求 9

3.2.2 安全性需求 9

3.2.3 功能需求 10

3.3本章小结 10

4系统设计

4.1系统结构设计

4.2系统功能模块设计

4.3 数据库设计

4.3.1 概念模型设计

4.3.2 数据库表结构

4.4本章小结

5 系统实现

5.1系统开发环境以及运行环境

5.1.1 系统开发环境

5.1.2 系统运行环境

5.2音乐平台的主要功能模块实现

5.3小程序功能模块

5.4管理员功能模块

5.6本章小结

6系统测试

6.1 系统测试目的

6.2 系统测试环境

6.3系统测试用例

6.4本章小结

结  论

参考文献

  

1 绪  论

1.1研究背景 

信息技术的集成化和信息网络化的不断发展,人类开始步入信息化时代,信息技术作为一种资源成为音乐战略不可分割的一部分在当今社会,人们的生活节奏逐渐加快,人们对经济的要求逐渐降低,越来越多的人开始追求简单、快捷的方式。以现在计算机的技术的应用,使计算机成为人们使用现代发达技术的桥梁[1]。计算机可以有效的解决信息,十分方便的获取信息,从而提高工作的效率

1.2 研究意义

现如今科技的卓越发展,时代环境的大变革。人们生活变得越来越多元化,这种多元化很大程度上由互联网科技发展引起,日新月异的互联网让我们实现了众多的不可能。利用网络进行信息管理改革已经成为了人们追捧的一种趋势[2]。“音乐平台”是运用java语言Spring Boot框架,以Mysql数据库为基础而来发出来的。为保证我国经济的持续性发展,必须要让互联网信息时代在我国日益壮大,蓬勃发展一个好的音乐平台,将帮助音乐从琐碎冗杂的日常管理事务中解放出来,更专心投入在音乐推荐职责上,因而能更好的履行它自身的社会责任,这个音乐平台也就间接地为美好社会的创建出了一份力[3]。所以音乐平台的设计和实现是必要的也是很有意义的。

1.3国内外研究现状

如今,因为无线网相关技术的快速,尤其是在网上进行资源的上传下载、搜索查询等技术,以及信息处理和语言开发技术的进步,同时编程语言、建模技术的不断发展,促使诸多的平台系统架构由C/S(客户端/服务器)更多的转变为采用B/S(浏览器/服务器)的架构,从而让程序平台网络端的系统架构迎来了一个新的阶段。

并且,在对国外音乐平台发展现状的了解中,发现国外音乐平台一大多是一种门户的建设,除日常的办公业务外,与物流和资金流关系紧密的许多业务也都被设计为功能模块加入系统中[4]。在这一点上,我国完全没有落后,通过采用集成了这些功能的系统,帮助音乐各项业务的工作效率都得到了极大提高,从而持续地为音乐带来更多经济收益。

1.4本文组织结构

本论文将详细阐述音乐平台的开发背景、应用可行性以及系统实现所具有的现实意义,在对音乐平台进行详细的需求分析后,会根据需求分析的结果再结合实际情况为系统的实现选取合适的技术和架构,之后在上述分析论述的基础上进行系统设计,最后完成系统实现和测试。

本文共分为七章,分别是:

第一章绪论,在这一章中对音乐平台的研究背景和意义进行介绍,同时浅述了信息管理系统的发展,明确了音乐平台的实现的目的和方向[5]

第二章技术介绍,在本章中列举介绍了系统实现采用到的所有技术,包括一些主流的框架技术。

第三章需求分析,这一章对音乐平台的需求进行了全面详细的分析,从系统实现的应用可行性、技术可行性,再到系统的功能、性能、安全性需求都做了说明分析,最后描述了系统的业务流程对需求分析进行补充。

第四章系统设计,这一章中包含了系统实现选取的架构模式,以及组成系统的各个功能模块。

第五章系统实现,本章是在经过前面几章的分析后,将音乐平台开发实现,章节内容包括系统开发环境、运行环境和具体的功能模块实现。

第六章系统测试,模拟系统的实际应用环境,对编写完成的程序进行测试。在本章中列举了测试用例和测试结果。

第七章总结,对音乐平台的整个设计和实现过程进行总结[6]

1.5 基于协同过滤的推荐算法

基于协同过滤的推荐算法是现今各个电子商务领域中运用最为广泛的推荐算法,它对电子商务的发展起到了至关重要的作用。基于协同过滤的推荐算法是一种通过群体偏好的方式,来帮助个体来找到其共性,给该用户推荐相似的偏好物品。协同过滤算法的基本思路是通过分析各用户的历史的购物情况以及评论情况等用户行为,如评论、购买记录等,得到他们的偏好物品,将喜好不同物品的用户进行分组。之后对不同分组的用户进行分析,通过推荐算法预测出该用户的感兴趣的物品。该方法的具体操作可简述为向推荐算法中输入用户和商品的关系矩阵,输出用户对不同物品的兴趣值。

通常来说,基于协同过滤的推荐算法可分为基于内存的协同过滤和基于模型的协同过滤推荐算法,基于内存的推荐算法还包括基于用户和基于物品的协同[6]过滤推荐算法。基于用户的推荐算法是最早被提出的推荐算法,始于1991年,主要思路为在大量的用户相关数据中研究出用户对物品的偏好程度,之后通过推荐算法的算法推算出相似度较高的用户,然后将其相似用户所喜爱的物品通过推荐算法推荐给其他用户。基于物品的推荐算法是目前使用最为广泛的算法,它通过提取所有用户对不同物品的评价,探究不同物品之间的相似度,然后根据用户之前所购买或有较高评价的商品推荐与其相似度较高的商品。基于模型的推荐算法可以运用于数据量小的场景里,当数据规模较大时,此方法不够精准,推荐效率较为低下。

基于用户的协同过滤推荐算法对比基于内容的推荐算法来说,最大的优点就是对于物品的结构没有特殊要求,可以有效地处理图片视频等结构化数据。另外,随着用户的使用次数增多,历史记录不断增加,该推荐算法将会更加精准,效率也会提高。然而对于当下的基于协同过滤的推荐算法来说,该推荐方法仍然存在一些弊端致使推荐的效率较低,如稀疏性问题和扩展性问题,另外,对于新用户,由于这些用户缺少历史数据,往往会出现推荐不精准的问题,该问题称为新用户的冷启动问题。


2 技术介绍 

在这一章中,主要是罗列出实现系统将采用的java语言并对其做简单介绍。本论文中的音乐平台使用当下主流的Spring Boot作为后台开发框架,系统的底层数据库选用了关系型数据库MySQL。

2.1 Spring Boot框架介绍

Spring Boot是近几年最为流行的后台开发框架,它的诞生一改过去Spring框架开发中繁琐的配置,极大地简化了Spring应用的搭建和开发。Spring Boot框架不仅保有了Spring框架中的所有优秀特性,还通过使用特定的配置方式,在底层帮助开发人员在工程创建是就预先做了很多配置,这样在开发时就不再需要开发人员过多进行繁琐的配置了。另外在Spring Boot中集成了大量框架,这就使得开发人员不再需要到处寻找在导入开发中需要依赖的jar包,同时也解决了依赖包版本冲突问题,从而提高了依赖包引用的稳定性,从而实现了对Spring应用搭建和开发过程的简化。

2.2 Java语言

Java是一种在Web应用开发中得到广泛使用的脚本语言,经常被用来对用户的相关行为做出反应。它还具有面向对象的设计能力,使设计开发过程更加直观和模块化,并在HTML基础上进行交互Web页面的开发。这种脚本语言的问世,使用户与页面之间的实时、动态交互成为现实,丰富了页面的内容,增强了页面的活力。另外,Java技术也被广泛地运用于该系统,比如对用户输入的数据进行检测,以保证其有效性。Java技术可以在不依赖Web服务程序的基础上在本地客户机上运行。从而有效地解决了因网络速度所带来的迟缓问题,使用户能够更加顺畅、快捷地进行访问。一些功能,比如用户的数据输入,可以通过JavaScript这样的客户语言来完成。该系统采用Java客户机进行用户身份认证,确保了系统的安全和可靠性。

 2.3 Mysql的特点

Mysql 可以处理拥有上千万条记录的大型数据,支持常见的SQL语句规范,可移植性高,安装简单小巧,良好的运行效率,有丰富信息的网络支持,相对其他大型数据库而言,调试、管理,优化简单;使用客户端工具操作效率高,安全性高,使用WEB方式简单方便,不受限制。

2.4 B/S架构

Web程序设计技术一项用于网页制造方面的专业技术,主要实现了网页的动态交互功能,通过此项技术语言(如PHP、CGI、ASP等设计的相关网页可以用户所发出的及时操作以及需求进展相应的相应,从而到达实现即时动态交互的目的。

B/S构造(Browser/Server,浏览器/效劳模式)其是一种分布式的计算机网络系统,用户通过浏览器向上一级的网站程序传递相关的参数和请求,然后效劳器上的程序再这些请求和参数进展处理,最后将结果通过反响回用户浏览器反映出来。

2.5 微信小程序技术  

小程序并非凭空冒出来的一个概念。当微信中的 WebView 逐渐成为移动 Web 的一个重要入口时,微信就有相关的 JS API 了。

实际上,微信官方是没有对外暴露过如此调用的,此类 API 最初是提供给腾讯内部一些业务使用,很多外部开发者发现了之后,依葫芦画瓢地使用了,逐渐成为微信中网页的事实标准。2015年初,微信发布了一整套网页开发工具包,称之为 JS-SDK,开放了拍摄、录音、语音识别、二维码、地图、支付、分享、卡券等几十个API。给所有的 Web 开发者打开了一扇全新的窗户,让所有开发者都可以使用到微信的原生能力,去完成一些之前做不到或者难以做到的事情。

JS-SDK是对之前的 WeixinJSBrige 的一个包装,以及新能力的释放,并且由对内开放转为了对所有开发者开放,在很短的时间内获得了极大的关注。从数据监控来看,绝大部分在微信内传播的移动网页都使用到了相关的接口。

​JS-SDK 解决了移动网页能力不足的问题,通过暴露微信的接口使得 Web 开发者能够拥有更多的能力,然而在更多的能力之外,JS-SDK 的模式并没有解决使用移动网页遇到的体验不良的问题。用户在访问网页的时候,在浏览器开始显示之前都会有一个的白屏过程,在移动端,受限于设备性能和网络速度,白屏会更加明显。我们团队把很多技术精力放置在如何帮助平台上的Web开发者解决这个问题。因此我们设计了一个 JS-SDK 的增强版本,其中有一个重要的功能,称之为“微信 Web 资源离线存储”

​这个设计有点类似 HTML5 的 Application Cache,但在设计上规避了一些 Application Cache的不足。

​在内部测试中,我们发现 离线存储 能够解决一些问题,但对于一些复杂的页面依然会有白屏问题,例如页面加载了大量的 CSS 或者是 JavaScript 文件。​除了白屏,影响 Web 体验的问题还有缺少操作的反馈,主要表现在两个方面:页面切换的生硬和点击的迟滞感。

​微信面临的问题是如何设计一个比较好的系统,使得所有开发者在微信中都能获得比较好的体验。这个问题是之前的 JS-SDK 所处理不了的,需要一个全新的系统来完成,它需要使得所有的开发者都能做到:

快速的加载

更强大的能力

原生的体验

易用且安全的微信数据开放

高效和简单的开发

2.5本章小结

在本章中,详细介绍了本论文中实现的音乐平台所采用的技术,包括后台开发中所使用的Spring Boot框架,对上述技术的研究和应用,可以为程序后续的顺利开发提供帮助,在简化程序开发的同时提高开发效率和质量[8]

3需求分析

在这一章中将对本论文要实现的音乐平台进行详尽的可行性分析、需求分析,本章内容主要涵盖了对系统预期应用环境的分析,对系统功能和安全性需求的分析,最后还有对系统的功能需求的分析[9]。这一章的内容将为之后的系统设计和实现提供可靠依据,是系统完整可靠实现的重要保障。

3.1可行性分析

3.1.1经济可行性

系统采用的是开发环境Eclipse进行设计以及编写,并且根据所学的java语言来实现相应的功能的开发,综合就是一个比较基础的系统开发设计,所以所用到的有开源的开发环境所构成。而且可以利用现有的设备,不用进行另外的硬件设备购买。

用户通过使用音乐平台,很大程度减小了人员成本,极大提高了管理的效率。目前的由人员管理的方式存在很多不足,首先是人工成本大,并且工作效率比较低,然后是存在着很多现金流失的问题[10]

经济可行性是主要计算项目的开发成本,还有项目成功后可能带来的有效收益。很多的项目只有开发成本能控制在企业有可能接受的范围内的情况下,这样的项目才会被批准开发。然而本次系统的开发在上述所有的问题的情况下,是可以完成相关的系统设计。

3.1.2技术可行性

技术可行性是分析系统都需要用到哪些技术知识,语法是否规范标准,代码量多大,是否具有可移植性,在 MVC在这种设计模式下能够真正的实现数据层和表示层的分离,以及前台页面是否可以做到美观实用,是否吸引眼球。网站是否足够稳定,后台管理页面是否足够方便管理,数据库的构建是否可以符合系统要求,是否需要搭建集群等等[11]

3.1.3运营可行性

可操作性是指将系统开发所涉及到的所有功能全都实现,代码收尾工作完成后对用户消费水平,系统的业务能力是否与用户消费水平所对等,是否可以满足大部分消费者的需求,页面是否美观,能否让用户满意,代码显示是否为轻量级,操作和功能是否简单便捷,是否同时适用于小孩,成人和老人。系统能否同时应用于windows、linux等操作系统,这取决于系统的可移植性。JAVA 编程语言的适应性非常强,基本上能够较好的适应目前市场环境中所流行的各个平台。也就是说Java的可移植性很强,那么系统的价值越高,可行性也就越强。

3.1.4法律可行性

音乐平台是面向大众开源化和不收取任何费用的。它的主要目的是帮助人们解决预约音乐问题。完全符合法律可行性要求,系统内部权限划分不会导致内部用户泄露系统机密。对于用户信息,系统有保护措施,用户密码在数据库中加密,并有严格的自我控制[12]

3.2系统需求分析

3.2.1 性能需求

1界面友好  

音乐平台设计的目的在于帮助音乐的工作人员能够更加高效轻松地进行日常的管理工作,所以作为一个工具,该系统应该被设计得易于上手使用,整个系统界面需要简洁明了、清晰易懂,而且一定要为用户提供必要的提示信息,比如在登录时用户密码或者用户名输入错误时要给予提示。总之一定要从使用者的角度出发,去设计用户操作界面[13]。    

3.2.2 安全性需求

首先要保证服务器不受攻击,数据库不能曝露在互联中。对使用系统的不同用户赋予相应的权限,用户只能进行自己权限允许范围内的操作。数据库中进行多用户管理,对用户的敏感信息如身份证信息,只有最高权限的数据库管理员用户可查询,其他用户无权限查看。

3.2.3功能需求

本音乐平台是为了提高用户查阅信息的效率和管理人员管理信息的工作效率,可以快速存储大量数据,还有信息检索功能,这大大的满足了用户和管理员这两者的需求。操作简单易懂,合理分析各个模块的功能,尽可能优化界面,让用户和管理员能使用环境更好的系统[14]

对比要实现的功能来分析出用户的需求,可以让用户在线对其进行查看歌手、歌单、音乐等信息,这不仅满足了用户的需求,还大大的节省了时间。因此,管理员对信息进行添加、修改、删除、查看,可以提高管理员的工作效率。

1管理员用例图如图3-1所示

                            图3-1 管理员用例图

2 用户用例图如图3-2所示:

                                    图3-2 用户用例图

3.3本章小结

在本章中对本论文要实现的音乐平台要实现的需求进行了详尽的说明,包括系统实现的可行性分析,整个系统在功能、性能和安全方面需求的分析,最后对整个系统不同身份用户的业务流程进行了有序的阐述。通过对以上内容的分析和说明,使得系统要实现的具体功能更加清晰,这给后面系统的设计和实现奠定了良好的基础,有助于整个程序开发的顺利进行[15]

4系统设计

通过前三章的分析说明,本论文中音乐平台已经具有了良好的实现基础,目前的第四章将对系统的具体实现进行说明介绍。

4.1系统结构设计

随着互联网的兴起以及国内外许多B/S架构的优秀系统被广泛使用而变得流行,B/S架构成为了系统开发的主流。本论文中的音乐平台也同样采用了B/S架构标准的三层架构,即将整个系统划分为表现层、业务层和持久层这三层,并且在表现层采用MVC设计模型。

采用B/S架构,整个系统的核心业务逻辑都被放在服务器端,使得开发过程变得方便。虽然这会使得服务器端的压力较大,但在Ajax等技术兴起后,在前台也就是浏览器端也可以实现部分业务逻辑,一定程度上分担了服务器的压力。

同时,该系统采用的三层B/S架构,将整个系统进行分层。在表现层,主要负责处理从客户端接收到的请求,根据请求内容进行处理后向客户端响应结果。在业务层中,囊括了整个系统的核心业务逻辑,它位于数据访问层之上表现层之下,表现层的请求发送至业务层,业务层将根据编写好的业务逻辑与数据层进行交互。但是每个层之间是不具有必然联系的,表现层的请求发送至业务层,业务层在接受到后可以不进行处理,这并不会导致整个系统出现错误。所以只要层与层之间交互的接口不发生变化,某一层的变更并不会对其它层产生影响。所以这种架构的系统实际上很易于扩充,只要表现层有新的请求发送给业务层,业务层只要有相应的处理逻辑就好了,所以业务逻辑层的设计是十分重要的。而在持久层,主要进行的就是数据的存取,也就是和数据库打交道。

以上这种对程序进行分层的方式,可以使开发者专注于结构中的某一层,每一层要进行的工作十分明确,降低了耦合性,这种标准化的开发方式,有利于程序的复用,也极大地降低了之后对系统功能扩充和维护的成本。

这些功能可以充分满足音乐平台的需求。此系统功能较为全面如下图系统功能结构如图4-1所示。

4-1 功能结构图

4.2系统功能模块设计

音乐平台的使用者主要有类用户,一类是管理员,他拥有整个系统的最高权限,然后是用户,他具有管理员给予级别的权限,都只能对自己的个人信息进行操作。系统根据这类用户,划分出了大功能模块。

4.3 数据库设计

4.3.1 概念模型设计

概念模型是对现实中的问题出现的事物的进行描述,ER图是由实体线以及关联构成的图,E-R图可以明确地叙述系统中涵盖的实体线相互关系。

用户信息E-R图如图4-2所示:

图4-2用户信息E-R

留言板E-R图如图4-3所示:

图4-3留言板E-R

热门歌曲E-R图如图4-4所示:

图4-4热门歌曲E-R

音乐资讯E-R图如图4-5所示:

图4-5音乐资讯E-R

音乐平台E-R图如图4-6所示:

图4-6音乐平台E-R

4.3.2 数据库表结构

本论文中的音乐平台采用MySQL数据库,系统中的所有对象以及对象的所有属性都将在下列表格中展现。

4-1token表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

userid

bigint

用户id

username

varchar

100

用户名

tablename

varchar

100

表名

role

varchar

100

角色

token

varchar

200

密码

addtime

timestamp

新增时间

CURRENT_TIMESTAMP

expiratedtime

timestamp

过期时间

CURRENT_TIMESTAMP

4-2系统简介

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

title

varchar

200

标题

subtitle

varchar

200

副标题

content

longtext

4294967295

内容

picture1

longtext

4294967295

图片1

picture2

longtext

4294967295

图片2

picture3

longtext

4294967295

图片3

4-3收藏表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

userid

bigint

用户id

refid

bigint

商品id

tablename

varchar

200

表名

name

varchar

200

名称

picture

longtext

4294967295

图片

type

varchar

200

类型

1

inteltype

varchar

200

推荐类型

remark

varchar

200

备注

4-4热门歌曲

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

songname

varchar

200

歌名

yinleleixing

varchar

200

歌曲分类

gequfengmian

longtext

4294967295

歌曲封面

songfile

longtext

4294967295

音乐文件

singer

varchar

200

歌手

fabushijian

date

发布时间

gequshizhang

varchar

200

歌曲时长

gequgeci

longtext

4294967295

歌曲歌词

clicktime

datetime

最近点击时间

clicknum

int

点击次数

0

discussnum

int

评论数

0

storeupnum

int

收藏数

0

4-5音乐资讯分类

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

typename

varchar

200

分类名称

4-6音乐资讯

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

title

varchar

200

标题

introduction

longtext

4294967295

简介

typename

varchar

200

分类名称

name

varchar

200

发布人

headportrait

longtext

4294967295

头像

clicknum

int

点击次数

0

clicktime

datetime

最近点击时间

thumbsupnum

int

0

crazilynum

int

0

storeupnum

int

收藏数

0

picture

longtext

4294967295

图片

content

longtext

4294967295

内容

4-7留言板

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

userid

bigint

留言人id

username

varchar

200

用户名

avatarurl

longtext

4294967295

头像

content

longtext

4294967295

留言内容

cpicture

longtext

4294967295

留言图片

reply

longtext

4294967295

回复内容

rpicture

longtext

4294967295

回复图片

4-8热门歌曲评论表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

  主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

refid

bigint

关联表id

userid

bigint

用户id

avatarurl

longtext

4294967295

头像

nickname

varchar

200

用户名

content

longtext

4294967295

评论内容

score

double

评分

reply

longtext

4294967295

回复内容

4-9用户

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

yonghuzhanghao

varchar

200

用户账号

mima

varchar

200

密码

yonghuxingming

varchar

200

用户姓名

xingbie

varchar

200

性别

yonghudianhua

varchar

200

用户电话

touxiang

longtext

4294967295

头像

4-10配置文件

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

  主键

name

varchar

100

配置参数名称

value

varchar

100

配置参数值

url

varchar

500

url

4-11音乐类型

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

yinleleixing

varchar

200

音乐类型

image

longtext

4294967295

image

4-12关于我们

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

addtime

timestamp

创建时间

CURRENT_TIMESTAMP

title

varchar

200

标题

subtitle

varchar

200

副标题

content

longtext

4294967295

内容

picture1

longtext

4294967295

图片1

picture2

longtext

4294967295

图片2

picture3

longtext

4294967295

图片3

4-13用户表

字段名称

类型

长度

字段说明

主键

默认值

id

bigint

主键

主键

username

varchar

100

用户名

password

varchar

100

密码

image

varchar

200

头像

role

varchar

100

角色

管理员

addtime

timestamp

新增时间

CURRENT_TIMESTAMP

4.4本章小结

本章主要是对音乐平台进行设计,详细的说明了该系统实现所采用的架构、系统中所有的功能模块,并以表格的形式展现了系统持久层中的所有实体和实体的所有属性。明确的功能说明和详尽的数据陈列,方便将系统业务和数据联系起来,为后面的程序开发提供方便。


5 系统实现

在上一章中,本论文中的音乐平台进行了全面的系统设计。接下来第五章对本音乐平台的实现过程进行说明,包括对该音乐平台所需的开发环境、运行环境的说明以及对上一章中提到的各种内容的实现。

5.1系统开发环境以及运行环境

5.1.1 系统开发环境

表5-1 开发环境

开发使用的操作系统

Windows10

开发使用的编程语言

JAVA

开发框架选择

Spring Boot

选取的数据库

MySQL

开发采用的IDE

IntelliJ IDEA

5.1.2 系统运行环境

 本音乐平台的运行环境如表5-2所示。

表5-2 客户端运行环境

运行使用操作系统

Windows10

客户端软件

Chrome浏览器

5.2音乐平台的主要功能模块实现

5.3小程序功能模块 

小程序页面主要包括系统首页、热门歌曲、音乐资讯、留言板个人中心等内容,并根据需要进行详细操作;如图5-1所示:

图5-1小程序首页界面图

在注册流程中,用户在小程序端填写必要信息(如用户名、密码等)并提交。小程序端将这些信息通过HTTP请求发送到Java后端。后端处理这些信息,检查用户名是否唯一,并将新用户数据存入MySQL数据库。完成后,后端向小程序端发送注册成功的确认,小程序端随后通知用户完成注册。这个过程实现了新用户的数据收集、验证和存储。

如图5-2所示。

图5-2用户注册界面图

在登录流程中,用户首先在小程序端界面输入用户名和密码。这些信息通过HTTP请求发送到Java后端。后端接收请求,通过与MySQL数据库交互验证用户凭证。如果认证成功,后端会返回给小程序端,允许用户访问系统。这个过程涵盖了从用户输入到系统验证和响应的全过程。如图5-3所示。

图5-3用户登录界面图

热门歌曲,在热门歌曲页面可以查看歌曲名称、歌曲分类、歌手、发布时间、歌曲时长、点击次数、音乐文件等内容,并进行收藏或者评论,还能在线播放音乐等操作;如图5-4所示。

图5-4热门歌曲界面图

音乐资讯,在音乐资讯页面可以对音乐资讯进行点赞、收藏等操作如图5-5所示。

图5-5音乐资讯界面图

个人中心,在个人信息页面通过填写用户账号用户姓名、性别、用户电话、头像等信息进行更新信息,如图5-6所示。

图5-6个人中心界面图

5.4管理员功能模块

管理员进行登录,进入系统前在登录页面根据要求填写用户名和密码,验证码,选择角色等信息,点击登录进行登录操作,如图5-7所示。

图5-7管理员登录界面图

管理员登录系统后,可以对首页、用户、音乐类型、热门歌曲、留言板、系统管理、我的信息等进行相应的操作管理,如图5-8所示。

图5-8管理员功能界图面

用户功能在视图层(view层)进行交互,比如点击“添加用户”按钮或填写用户信息表单。这些用户信息动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查询、新增、更新或删除用户信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便用户功能可以看到最新的信息或相应的操作反馈。用户管理,在用户管理页面可以对用户账号、用户姓名、性别、用户电话、头像等内容进行增加、更新和删除等操作,如图5-9所示。

图5-9用户管理界面图

音乐类型功能在视图层(view层)进行交互,比如点击“添加”按钮或填写用户信息表单。这些音乐类型信息动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查询、新增、更新或删除音乐类型信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便音乐类型功能可以看到最新的信息或相应的操作反馈。音乐类型管理,在音乐类型页面可以对音乐类型等内容进行查询增加、更新、删除等操作如图5-10所示。

图5-10音乐类型界面图

热门歌曲,在热门歌曲页面可以对歌名、歌曲分类、歌曲封面、音乐文件、歌手、发布时间、歌曲时长、点击次数、评论数、收藏数等内容进行增加、更新、查看评论和删除还能查看歌曲分类、歌手统计和发布时间的统计图的操作,如图5-11所示。

图5-11热门歌曲管理界面图

留言板,在留言板页面可以对用户名、留言内容、留言图片、回复内容、回复图片等内容进行更新、回复和删除等操作,如图5-12所示。

图5-12留言板界面图

系统管理,管理员可以对系统简介、轮播图管理、音乐资讯、音乐资讯分类、关于我们进行详情操作,如图5-13所示。

图5-13系统管理界面图

5.6本章小结

在本章中对系统的开发和应用环境进行说明,这些内容为下一章测试时的环境搭建提供依据。本章还通过文字说明和截图的方式对系统应用的界面做了简要介绍。


6系统测试

系统测试是针对整个产品系统进行的测试,通过测试验证整个系统是否正确满足了前面需求分析篇章中的所有需求,测试系统的性能和功能是否与预想的一致,进而提高系统的稳定性和可靠性[15]。同时,通过合理的测试可以发现系统中存在的问题,以防止系统在正式投入使用后出现故障,影响系统使用者工作的顺利进行。系统测试的的主要方法有白盒测试和黑盒测试,本章节将采用黑盒测试法,从系统的功能和性能两方面入手进行测试。

6.1 系统测试目的

在一个可靠的软件系统开发过程中,系统测试是其中重要的一环,有时在一套大型的软件系统中一个小故障就可能带来严重后果。虽然不存在完全没有问题的软件,但是可以通过全面系统的测试尽可能的发现漏洞,并在系统投入使用前修复漏洞,尽可能减小在实际使用中系统发生故障的概率[16]

6.2 系统测试环境

为了使测试结果更加可靠,需要模拟实际的系统应用场景来搭建测试环境。下表列出了系统测试环境的组成部分。

表6-1系统测试环境组成

硬件或软件

型号以及版本

操作系统

Windows10

数据库

MySQL

浏览器

Chrome

测试网络

4G热点

6.3系统测试用例

  1. 页面跳转测试

目的测试是测试系统的不同功能页面间能否正常准确跳转,测试结果如下表。

表6-2首页跳转表

编号

操作

预期结果

测试结果

1

点击用户管理

跳转相应用户管理界面

成功跳转管理界面

2

点击登录

跳转至初始界面

成功跳转初始界面

3

点击注册

跳转到注册界面

成功跳转注册界面

  1. 用户登录功能测试

测试登录注册功能的正确性以及用户错误登录时的系统反馈,测试结果如下表所示。

表6-3 注册登陆页面测试表

编号

操作

预期结果

测试结果

1

点击注册,输入新的用户名密码

注册成功

注册成功

2

使用注册成功的用户名进行登录

登陆成功

登录成功

3

使用错误用户名登录

显示账号或密码错误

提示“账号或密码错误”

4

用户名为空进行登录

显示用户名不能为空

提示“用户名不能为空”

6.4本章小结

本章旨在进一步的完善系统,为此进行了系统测试,通过测试验证了系统运行的正确性和可靠性,根据测试结果也进一步完善了音乐平台的功能。


结  论

本文对音乐平台的实现进行了分析设计,并给予分析设计的内容实现了音乐平台。在论文开端,通过对现实背景的分析论述,证明了音乐平台的应用可行性和现实意义。之后我们对系统实现所采用的技术进行研究说明,然后结合音乐推荐日常管理工作的实际情况,提出了系统实现要满足的需求,并详细叙述了这些需求的具体内容以及将要应用系统的不同使用者的业务流程,这些是音乐平台能够正确实现功能的基本前提和依据,后续的设计与实现都将围绕需求中的内容展开。接着开始进行系统设计,首先进行系统架构设计,采用了当下主流的B/S结构,并在表现层使用了MVC设计模式,将整个系统分层,方便了系统的开发,降低了系统功能扩充的维护成本。然后,对数据库进行设计,将所有数据表列出。最后,我们将音乐平台实现,并进行测试。

在整个系统的设计与实现过程中,除了应用在学校中学到的知识外还学习了新的技术,使我在整合已有知识的同时,拓宽了自己的知识面,增加了自己的技能点。这个过程必然不是一帆风顺的,其中有许多同学和老师的帮助,所以这次毕业设计是十分愉快的一次经历。


参考文献

  1. 张敏. 昆明市康驰音乐平台的设计与实现[D].电子科技大学,2021.
  2. 崔文明. 海东宜达音乐业务管理系统的设计与实现[D].北京工业大学,2022.
  3. 刘辉兰. 基于B/S的音乐平台的研究与实现[D].广西大学,2022.
  4. 栾雪莲. 音乐培训管理系统设计与实现[D].黑龙江大学,2021.
  5. 张乃勇. 音乐平台的设计与实现[D].电子科技大学,2021.
  6. 赵庆东. 本溪卧龙音乐平台的设计与实现[D].电子科技大学,2021.
  7. web应用开发中的SSM框架设计[J]. 贺雪梅.  电子世界. 2019(01).
  8. Spring Boot框架在模型层的应用及原理[J]. 温立辉.  福建电脑. 2022(05).
  9. 大型网站分布式架构的研究和应用[J]. 张玛丽.  山西电子技术. 2022(02).
  10. 我国中小企业信息化的思考与探索[J]. 胡磊.  企业经济. 2022(11).
  11. 史济民,顾春华,李昌武,苑荣.软件工程——原理、方法与应用.北京:高等 教育出版社,2021.
  12. 黄光奇。Web数据库互连技术开发指南.北京:国防工业出版社,2021.
  13. Cook, Guy. Principles & Practice in Applied Linguistics. Oxford: Oxford University Press. 2021.
  14. Stern, H.H. Issues and Options in Language Teaching. Oxford: Oxford University Press. 2019.
  15.  Research and application of Web System Based on SSM framework [J] Zou Hongting Journal of Hunan Institute of Technology (NATURAL SCIENCE EDITION) 2021(01).


致  谢

毕业设计是我在大学校园中的最后一项内容了,毕业设计结束的那天也意味着我的大学生活的结束,所以在做毕业设计的时候我的内心十分复杂,因为大学生活对我来说是十分幸福的一段时光。在大学我遇到了很好的老师和同学,他们身上有很多吸引我值得我学习的特质,在和他们的相处中我也在不断完善自己,所以只是和他们相遇相识就已经让我很开心很感谢了。包括在完成毕业论文的过程中,老师也十分耐心的给予同学们耐心的指导,在我们不自信和受挫的时候也一直鼓励我们、相信我们,在毕业论文的写作遇到瓶颈的时候,还有很好的同学彼此沟通,又或者是一起去打球,往往使我感到放松并且产生新的思路。毕业后的分离总是难免的,但老师同学们带给我的成长是无法磨灭的,所以真心地感恩遇到过的这些优秀的人,我相信他们未来的生活必将精彩,我也由衷的祝福他们,我将继续努力,希望有一天能再见到他们,我能成为更优秀的自己开心的和他们打招呼,在一起怀念大学的美好时光。

免费领取项目源码,请点赞❤️关注收藏并私信博主,谢谢!

免费领取项目源码,请点赞❤️关注收藏并私信博主,谢谢!

免费领取项目源码,请点赞❤️关注收藏并私信博主,谢谢!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值