1 绪论 1
1.1 研究背景 2
1.2 音乐播放及音乐推荐平台系统的现状 2
1.3 系统的技术架构 3
1.4 论文框架 4
2 系统需求分析 4
2.1 系统概述 5
2.2 系统功能需求 5
1.用户登录 5
2.主界面 5
3.歌曲搜索 5
4. 热门歌曲推荐 5
5.用户喜欢歌曲推荐 5
6. 歌曲排行推荐 5
7. 歌曲评论及展示 5
8. 歌曲分类展示 6
2.3 系统用例图 6
2.4 技术平台 6
2.4.1 SSM 6
2.4.2 HTML5 7
2.4.3 CSS 7
2.4.4 JavaScript 7
2.4.5 MySQL 8
3 系统设计 9
3.1 系统总体设计 9
3.2 系统业务流程图 9
4 系统详细设计 11
4.1 系统功能详解 11
4.1.1 用户功能模块 11
4.1.2 管理员功能模块 12
4.2 数据库设计 12
数据表ER图设计 13
4.2.1数据库表设计 13
5 系统功能的具体实现 16
5.1 管理员实现功能 17
5.1.1 管理员登录功能 17
5.1.2 歌手管理功能的实现 18
5.1.3 音乐类型管理功能的实现 19
5.1.4 音乐管理功能的实现 20
5.1.5 用户管理功能的实现 22
6 系统测试 23
6.1系统调试的目的和意义 23
6.2功能测试用例 24
结束语 26
致谢 27
参考文献 28
1 绪论
互联网时代为人们提供了多元化的网络服务,音乐服务是其中之一,人们通过音乐可以陶冶情操,越来越多的人倾向于使用音乐、视频等娱乐和放松自己[1]。现在各大音乐网站提供了海量的歌曲满足人们的音乐需求。但是歌曲量繁多,歌曲还在每日的增加中,用户想在那么多的歌曲中找到自己喜欢听的歌曲是一件不容易的事情[2]。因此本课题设计开发一个音乐播发及音乐推荐平台,该平台可以根据用户的喜好推荐音乐,还可以为用户推荐当前热门歌曲和人气排行等大众喜欢的歌曲推荐给用户,满足用户的音乐需求。
本课题基于JAVA采用SSM、html、css等技术实现了音乐播发及音乐推荐平台,此平台具有用户登录、歌曲搜索、热门歌曲推荐、用户喜欢歌曲推荐、歌曲排行推荐等主要功能。
1.1 研究背景
当前生活节奏快,人们在繁忙的学习工作生活之外,还需要多彩的娱乐生活来丰富业余生活。劳逸结合,平衡工作和娱乐的比例才能更好地提高工作学习效率和劳动输出效益。音乐逐渐成为人们生活中的娱乐调节剂[3]。
上世纪九十年代末,互联网进入中国就呈现爆发式的发展状况,计算机网络技术经过十几载的更新换代,中国的互联网已经成为全球最大的互联网[4]。音乐平台是计算机技术和通信技术发展的必然产物。互联网式的音乐传播彻底改变了原有传统的音频传播途径与方式,方便的传播途径,高效的传播效率,有利于社会资源的最大化利用[5]。由于音乐平台使用方便,越来越受到大家地欢迎。但这也导致了中国的音乐网站平台数量的激增,网站为了能够有自己稳定的使用者,网站之间的竞争也空前激烈,为能在中国众多的音乐平台中起到领导地位,建立一个具有自己特色的,功能详细,实用的音乐播放及音乐推荐平台尤为重要[6]。
1.2 音乐播放及音乐推荐平台系统的现状
国外音乐网站建设先驱是美国沃尔玛公司建设的一家新型网络音乐下载商店,从商店下载的音乐可以在微软自带的媒体播放器进行播放,该商店开启了在线音乐播放下载收费的模式。在此之后,很多的在线音乐公司都采用了该模式。如今在国外比较流行的音乐网站有Spotify和Apple Music,这两个公司基本承包了国外在线音乐的市场。用户需要每月支付一定的金额才能使用音乐网站的受限功能,通过这种合约的模式,带动了国外在线音乐飞速发展。在国外,有教育机构尝试音乐结合教育。在音乐教育领域代表性的成就是美国当代音乐计划Contemporary Music Project,新一代音乐学习者不再被视为思想视野的延伸,而是社会需要形成跨文化理解的平衡,这可以直接影响国际社会的发展,美国将音乐教育作为人们日常交流和民族感情增进的方式,同时音乐也可以被认为是一种多元文化的结合体[7]。
国内音乐传播经历了磁带、CD再到如今大数据时代的在线音乐下载。中国在线音乐在2001年步入初期的快速发展阶段,众多在线音乐网站纷纷涌现,市场发展极其迅速。在2004年期间,在国外音乐版权收费冲击下,国内音乐版权争夺激烈,国内在线音乐网站经历了低谷期,直到2009年国家规范网络音乐市场秩序,加强了音乐版权的保护,在线音乐经济回暖。随着音乐版权归属的保护与重视,在线音乐网站版权之间的斗争也是愈演愈烈。现如今,网易云音乐、腾讯音乐平台、阿里音乐,实现了对其他小公司音乐平台的收购。在大数据的时代下,各大音乐平台抓住机会,公司更是推出了社交性的在线音乐平台。实行了精准推送功能,根据用户的喜好进行每日音乐推送,深受广大使用者的喜爱[8]。
本课题主要建立一个音乐播发及音乐推荐系统,平台从服务于系统管理员和普通用户这两种用户出发,力求操作简便、界面美观、灵活实用。网站管理员可以实现歌曲与专辑管理、前后台用户管理、栏目分类管理、页面生成管理以及用户的注册登录、个人信息修改、歌曲试听下载等功能,基本满足用户对普通音乐网站的需要。
1.3 系统的技术架构
本课题实现的音乐播放及音乐推荐平台:本课题使用HTML+CSS网页编程技术、JavaScript及JAVA语言,后端采用SSM框架技术,整个系统采用前后端分离的方式。SSM框架可以更好地体现分层的模式,使其维护和管理具有高效又便捷的优点。
1.4 论文框架
本论文主要介绍了音乐播放及音乐推荐平台的开发过程,包括背景意义、分析系统的需求、对系统的功能及数据库等进行设计、功能的实现说明,展示实现的功能效果等,共分为六章,每章内容分别如下:
第一章,绪论。简要介绍了音乐播放及音乐推荐平台的背景意义,对音乐的过往发展进行了分析,介绍了本音乐平台需要使用的技术,划分了系统的章节结构安排。
第二章,系统需求分析。主要分析了系统的功能需求,绘制用例图来辅助描述用户功能理解,在本章中还介绍了本音乐平台的技术。
第三章,系统详细功能模块设计。本章对系统的总体功能进行了结构化的设计,并对系统用户的使用系统流程进行了设计,给出系统的总体框架。
第四章,系统详细设计。具体对系统的功能进行详细的描述,分析功能意义,对系统实现的数据进行设计,绘制数据表为系统的前后端提供数据支持。
第五章,系统功能的具体实现。详细介绍了用户注册登录、听歌推荐等模块的实现。
最后,结束语总结。对系统的整个开发做出总结,分析还有哪些不足,对未来的展望。
2 系统需求分析
需求分析是一个设计开发系统的前置步骤,我们设计开发一个系统,肯定要先了解的做系统的目的和需求,目的意义在前文中已经给出了,所以在本章就要对系统的需求进行分析,需求最基本的就是功能需求部分,只有在这部分上将功能需求细分,才能保证系统在后面的设计和实现部分顺利进行。分析需求也是将系统的开发成本做一个降低的过程,预先把需求的问题搞明白,避免开发系统过程中出现弯路[9]。
在本文需求分析中对本音乐平台的功能需求进行分析,并用用例图的方式辅助说明,然后对开发技术做一个简介保证系统的技术支持。音乐播放及音乐推荐平台是一个应用程序系统,转为用户听歌设计的平台。本平台为注册用户提供听歌功能,在后台中对音乐的信息进行信息化的管理,提高平台的运行效率[10]。
2.1 系统概述
本系统是一个音乐播放及音乐推荐平台的实现,设计开发该课题是为了给用户提供一个听歌且为用户推荐其个人感兴趣歌曲的平台。用户注册成为系统用户后可以对系统中的歌曲进行播放,在系统的页面搜索中查询歌曲,用户可以给歌曲进行评论,平台会展示热门歌曲给用户,为用户推荐个性化的歌曲,用户还可以在平台中管理自己的信息。
2.2 系统功能需求
音乐播放及音乐推荐平台主要功能是让用户满足听歌并为用户推荐歌曲的作用。用户在系统中可以查询歌曲信息、对歌曲进行评价,为用户提供个性化的服务。
本系统主要模块:
1.用户登录
登录是为保障系统的安全,用户输入账号密码然后进行登录进入系统主界面。
2.主界面
主界面是系统的主要功能展示的界面,为用户提供最核心的功能以及指引用户操作。
3.歌曲搜索
可以搜索歌曲信息。
4. 热门歌曲推荐
将热门歌曲推荐给用户。
5.用户喜欢歌曲推荐
平台推荐用户可能喜欢的歌曲。
6. 歌曲排行推荐
将平台歌曲进行一个排名,给用户提供歌曲选择的信息。
7. 歌曲评论及展示
用户可以给歌曲评论及看其他用户评论。
8. 歌曲分类展示
可以将歌曲分类并展示用户查看。
2.3 系统用例图
音乐播放及音乐推荐平台的用例如图2.1所示:
在这里插入图片描述
2.4 技术平台
2.4.1 SSM
SSM框架是Spring MVC ,Spring和Mybatis框架的整合,是标准的MVC模式,将整个系统划分为View层,Controller层,Service层,DAO层四层,使用Spring MVC负责请求的转发和视图管理,Spring实现业务对象管理,Mybatis作为数据对象的持久化引擎[11]。
DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此。
Service层:Service层主要负责业务模块的逻辑应用设计。
Controller层:Controller层负责具体的业务模块流程的控制。
View层:View层与控制层结合比较紧密,需要二者结合起来协同工发。View层主要负责前台jsp页面的表示。
2.4.2 HTML5
HTML5 是定义 HTML 标准的最新的版本。 该术语通过两个不同的概念来表现:
它是一个新版本的HTML语言,具有新的元素,属性和行为,它有更大的技术集,允许构建更多样化和更强大的网站和应用程序。这个集合有时称为HTML5和它的朋友们,不过大多数时候仅缩写为一个词 HTML5[12]。
它能够让你更恰当地描述你的内容是什么。能够让你和服务器之间通过创新的新技术方法进行通信。能够让网页在客户端本地存储数据以及更高效地离线运行。使 video 和 audio 成为了在所有 Web 中的一等公民。提供了一个更加分化范围的呈现选择。提供了非常显著的性能优化和更有效的计算机硬件使用。能够处理各种输入和输出设备及样式设计。
2.4.3 CSS
CSS是Cascading Style Sheets (层叠样式表)的简称,是一组格式设置的规则和外观样式的定义M。它是一种标记语言,是由W3C组织制定的一种用来定义样式规则(如字体、颜色和位置)的语言,不需要翻译,其可以直接由浏览器解释执行[13]。
CSS在Web应用程序界面中起到重要的作用:CSS简化了网页的代码,提高了网页的访问速度。因为外部的CSS文件会被浏览器保存在缓存中,从而加快了页面显示的速度,同时也减少了上传的代码量;CSS让网页更容易维护,其便于修改网站的样式,只需要修改CSS文件就可以改变整个网站的类型特色,避免了一个一个网页的修改,大大的减少了开发人员的工作量,而且已经定义过的css文件可以重用,即重用原来网页的样式;css使网页的功能更为强大,用户可以根据自己的需求来定义页面的显示类型等以及一些页面的特效等;同时,它将页面显示的内容与显示样式相分离,两者可以是单独的文件即.html文件和.css 文件,便于开发人员的修改和维护。
2.4.4 JavaScript
JavaScript是一种属于网络的脚本语言,已经被广泛应用于Web开发,常用于为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript是通过嵌入在HTML里来实现其功能的[14]。
1、是一种解释性脚本语言。
2、主要用来向HTML页面添加交互行为的语言。
3、可以直接嵌入HTML页面,但写成单独的JS文件更加的有利于代码的分离,利于后期的维护。
4、跨平台特性,能够在绝大多数浏览器的支持下,可以在多种平台下运行。
2.4.5 MySQL
数据库(database)就是一个存储数据的仓库。为了方便数据的管理与储存,它将数据按照特定的条件存储在磁盘上。通过数据库管理系统,可以高效的处理和管理存储在数据库中的数据。而且MySQL数据库可以说是是目前运行速度最快的SQL语言数据库。具有快捷、便捷、易用、高效、安全、大批量等优点[15]。

3 系统设计
本音乐播放及音乐推荐平台有前后两端,前端是用户使用的,后端是管理员使用的。用户的功能分析在需求分析时做出了分析,现在对平台的功能进行设计结构。通过功能结构设计出用户在平台中的功能使用流程。
3.1 系统总体设计
本系统是为用户听歌设计开发的,用户注册信息成为平台用户后,可以对平台的用户功能进行操作使用,后台是管理员管理信息的,通过后台传入数据,并进行增删改查,用户前端功能也得以展示。具体功能结构如下图3.1所示:
在这里插入图片描述
3.2 系统业务流程图
在音乐播放及音乐推荐平台中,用户进入系统需要先进行验证,然后才能进入平台主界面,在主界面中对用户的功能进行操作使用。用户平台的业务流程图如图3.2所示:
在这里插入图片描述
4 系统详细设计
系统的开发涉及多个方面,其中较为重要的需求分析和设计,在前文中系统的初步设计给出了功能结构的及系统流程,本章中对系统的功能进行一个详细的描述,并为系统的各个模块进行数据库数据表的设计,为前端后后端提供数据储存及数据调用。
4.1 系统功能详解
音乐播放及音乐推荐平台主要分为用户端及管理员端,具体的功能模块详细描述如下:
4.1.1 用户功能模块
1.用户注册登录:
用户进入系统后会被检测有无平台账号,如是第一次用户则需要进入注册页面,填写个人的信息,如用户名、密码、手机号码等信息完成注册,完成注册后使用注册的账号密码进行登录系统操作。
2.用户个人信息管理:
用户在系统中可以对个人的信息进行添加、查询、修改、删除。
3.用户收藏列表:
用户可以在系统中选择自己喜欢的歌曲加入收藏,这样就方便用户在收藏列表中快捷的查找到喜欢的歌曲。
4.用户听歌记录:
用户在本平台中听歌会产生听歌记录,用户可以查询听歌记录信息。
5.查看热门歌曲:
平台会为用户推荐一些热门的歌曲,方便用户进行选择。
6.查看歌曲排行:
平台会根据听曲人数总量确定人气排行,根据歌曲下载次数确定下载排行,根据歌曲被收藏的次数确定收藏排行,用户可以查看这些歌曲排行。
7.搜索歌曲:
用户进入系统后可以在首页的搜索框中,查找自己喜欢的歌曲。
8.歌曲评论及展示:
用户可以对平台中的歌曲进行评论,发表自己对歌曲的看法,也可以查看其他人的评论信息。
9.查看歌曲分类:
用户可以查看平台中歌曲的类型,用户可以在歌曲类型中选择自己想听的音乐。
4.1.2 管理员功能模块
1.管理员登录:
管理员不需要注册账号,管理员可以在后台中设置自己的账号密码,然后根据该账号密码进行登录进入平台。
2.歌曲管理:
管理员在该功能模块中上传歌曲,可以对歌曲的信息进行添加、修改、删除等,也可以定义歌曲的类型。
3.用户信息管理:
管理员在用户信息管理模块中管理用户的信息,可以查询用户的信息,可以删除用户。
4.歌曲评论管理:
用户在平台中对歌曲进行的评论,管理员可以对其进行回复评论、删除歌曲评论。
4.2 数据库设计
数据表ER图设计
在这里插入图片描述
4.2.1数据库表设计
本系统分为两个角色:管理员、用户。本系统需要设计7个数据表:管理员信息表、音乐信息表、歌手表、音乐歌手表、音乐类型表、用户信息表和用户收藏表。
(1)管理员信息表存储了管理员id、管理员编号、管理员名称、管理员密码、管理员性别、管理员年龄、管理员手机号码、管理员邮箱、管理员登录时间、登录IP、注册时间、管理员状态、角色id、身份证号码、籍贯、头像等信息。管理员信息表music_adminuser,如表4.1所示。
。。。。。。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。。。。。。。。。。。。

部分截图
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

论文内容全部下载连接,请点击》》》》》

Logo

本社区面向用户介绍CSDN开发云部门内部产品使用和产品迭代功能,产品功能迭代和产品建议更透明和便捷

更多推荐