为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 网页版在线音乐播放器详细设计毕业设计

网页版在线音乐播放器详细设计毕业设计

2019-06-27 5页 doc 1MB 160阅读

用户头像 个人认证

王小宝007

暂无简介

举报
网页版在线音乐播放器详细设计毕业设计本科毕业设计毕业论文题目:音乐在线点播系统的设计学生姓名:学号:系别:计算机与信息科学系专业班级:计算机科学与技术班指导教师姓名及职称:起止时间:20XX年2月—20XX年5月摘要由于网络的普及与快速发展,上网成了人们获取知识和信息的重要途径,越来越多的人开始接触网络并利用网络来提高自身素质,为了满意广大网友的娱乐要求,音乐网站应运而生。通过对现有的较流行的音乐网站进行了调查与分析,在明确用户对音乐需求的基础上,确定了音乐在线点播系统的功能有用户注册与登录、曲目分类、歌手分类、专辑查看、歌词显示、歌曲包括的检索、在...
网页版在线音乐播放器详细设计毕业设计
本科毕业设计#毕业#目:音乐在线点播系统的设计学生姓名:学号:系别:计算机与信息科学系专业班级:计算机科学与技术班指导教师姓名及职称:起止时间:20XX年2月—20XX年5月摘要由于网络的普及与快速发展,上网成了人们获取知识和信息的重要途径,越来越多的人开始接触网络并利用网络来提高自身素质,为了满意广大网友的娱乐要求,音乐网站应运而生。通过对现有的较流行的音乐网站进行了调查与分析,在明确用户对音乐需求的基础上,确定了音乐在线点播系统的功能有用户注册与登录、曲目分类、歌手分类、专辑查看、歌词显示、歌曲包括的检索、在线播放功能及播放操作等。在后台管理中,管理员对站内音乐信息采取必要的维护措施。本文首先进行系统的需求分析,确定系统的各个功能模块。采用SQL2014数据库建立系统运行所需的后台数据库,采用VS2015集成开发环境配合使用C#语言开发出一个音乐系统网站。关键词:音乐Web数据库网络ASP.NETAbstractAsthepopularityandrapiddevelopmentofnetwork,Internetaccesstoknowledgeandinformationhavebecomeamajorway,moreandmorepeoplecameintocontactwiththenetworkandusetheInternettoimprovetheirownqualityofentertainmenttothemajorityofuserssatisfiedtherequirementscameintomusicsite.Throughtheexistingmorepopularmusicsiteinvestigationandanalysis,basedonclearuserdemandformusiconthedeterminationofthefunctionofmusiconlineon-demandsystemsareuserregistrationandlogin,trackcategory,singerclassification,albumview,lyricsdisplay,includingsongsearch,onlineplaybackandplaybackoperations.Inthebackstagemanagement,theadministratortotakethenecessarymeasurestosafeguardthestationmusicinformation.Firstly,thedemandforsystemanalysis,thevarioussystemmodulestobebuilt.Createasystemusingadatabasewithsql2014back-enddatabasetoberunusingthevs2015integrateddevelopmentenvironmentusingC#languagedevelopmentwithamusicsystemwebsite.Keywords:MusicWebDatabaseNetworkASP.NET目录1绪论 11.1课题背景 11.2目的和意义 21.3关键技术和解决 22系统开发环境 32.1B/S结构模式 32.2动态网站技术介绍 42.3数据库技术 42.4ADO.NET连接数据库 53需求分析 73.1可行性分析 73.1.1技术可行性 73.1.2经济可行性 73.1.3操作可行性 73.1.4法律可行性 83.2系统概述 83.3需求分析 83.3.1播放器支持音乐格式需求 93.3.2网站首页需求 93.4计算机软件配置和开发平台 93.4.1计算机系统硬件配置 93.4.2计算机系统软件配置 93.4.3编程环境与工具 104总体设计 114.1系统模块总体设计 114.1.1音乐平台系统的结构 114.1.2音乐平台系统的流程 124.2数据库设计 134.2.1数据字典 134.2.2数据库E-R图 154.2.3数据表的设计 165详细设计 205.1网站首页界面设计 205.2主要模块功能设计 205.2.1用户注册管理模块 205.2.2我的音乐在线播放模块 225.2.3收藏与下载模块 235.2.4歌曲、歌手的分类与点播次数衡量的排行榜 255.2.5歌曲库与用户管理 275.3输入输出设计 286系统测试与性能分析 306.1测试的任务和目标 306.1.1测试的任务 306.1.2测试的目标 306.2计划 306.3测试用例 316.3.1管理员登录测试 316.3.2歌曲添加测试 316.3.3歌曲下载测试 316.3.4用户注册登录以及歌曲收藏测试 326.3.5歌曲在线试听测试与歌词显示 326.3.6歌曲与歌手的检索 327系统使用说明 347.1系统运行环境 347.2系统使用说明 348总结与展望 35参考文献 35图文说明 37致谢 39V音乐在线点播系统的设计***1绪论1.1课题背景当今时代是一个互联网络高速发展和发达的时代,随着计算机互联网络快速的发展,人们已经进入了信息时代,在这个时代中人们都离不开互联网络,商业、工业、银行、财政、教育、政府、娱乐和信息产业更是与其密不可分。在繁忙的工作中人们承受着各种各样的压力,而音乐网站作为一个新时代传媒的产物可以让人们在工作之余舒缓压力调整心情,使人们在纷繁的网络中也能够找到一个休憩的天地。随着Internet技术的发展,音乐网站使得人们对音乐欣赏娱乐的手段和载体发生了革命性的变化,Internet的开发性,分布性的特点和基于Internet的巨大的计算机能力使得人们突破了时间和空间的限制。基于Internet的在线音乐网站早已成为了人们的研究热点之一。与传统音乐欣赏和交流模式相比,在线音乐具有无可比拟的优越性,不但能满足了大多数用户对音乐爱好的需求,同时也刺激了电子数码产品的频繁更新换代。现有的音乐个人网站大体有两种模式:一、自己拥有独立的服务器,服务器上有强大的内存存储mp3歌曲资源。提供在线播放功能,需要将mp3的歌曲转换成wma格式,否则服务器吃不消。提供免费的wma格式歌曲下载(服务器可能受不了下载流量)。这种模式是个人音乐网站的高级模式,该模式的收入完全依靠网络广告。因为涉及版权问题没办法做大。另外mp3歌曲在百度很容易就能搜到。二、只需要一个虚拟空间,一套程序批量采集其它网站的歌曲,只提供在线播放功能。这种模式是现在很普遍的小偷站,投入低,管理维护省时省事,但是受制于被采集方的服务器。也仅仅依靠网络广告来盈利。现有模式的缺点就是资源价值不高。个人音乐网站其实面临的风险实在太多,就版权问题不说,服务器的投入成本与广告盈利几乎不成比例。针对现有这种状况,个人音乐网站的发展要具备以下几点才可以:1、歌曲资源具备高价值;2、提供试听和下载功能;3、能够有自己独特的风格。目前的流行音乐网站从传播形式来看,大致可分为三类:有固定网站的流行音乐网站、搜索类流行音乐网站、P2P类流行音乐网站。三者功能各异、互为补充。1.2目的和意义在网络飞速发展的社会里,网络已经成为人们日常工作和休闲娱乐的主要工具,本人选择的课题是音乐在线点播系统的设计,也是人与网络的互动。许多传统的信息和数据库系统被移植到互联网上,音乐网站作为一个这个时代的产物,早已超过了国界,使听音乐变的简单、便捷,它摒弃了传统听音乐媒体的不足,正在快速向前发展。从音乐网站上发展而来的网络音乐是一种全新的音乐模式,它突破了传统音乐的制作方法和传播模式的局限,更加贴近人们的生活。音乐网站是网络音乐的发展平台。过去,音乐网站功能较为单一,但随着网络技术的发展,用户对音乐网站的要求逐步提高,音乐网站由此也逐渐出现了更多采用较为优越的开发工具(如ASP.NET、JSP、JavaScript、PHP等)来建设的音乐网站。本课题所研究的音乐平台主要是为个人提供搜索,欣赏和下载的一个平台,从而给个人带来方便。课题目标是设计并实现一个音乐网站。结合实践,理解并进一步加深网页开发技术和数据库的知识,熟练运用相关开发工具和应用软件,熟悉网站建设的过程,熟练掌握网络数据库编程方法。1.3关键技术和解决方案本系统是采用ASP.NET技术的B/S架构的网站。开发工具为VS2015,数据库sqlserver2014,用到的技术有CSS、C#、JavaScript、Ajax。在线试听是在用户端调用jquery.player播放器从服务器数据库查询播放歌曲的路径,当参数赋值给播放器来实现的。搜索功能主要采取模糊查询和精确查询两种。2系统开发环境本系统采用B/S结构,前台开发工具为VS2015,后台数据库是SQL2014,软件要求:操作系统为WindowsXP或更高,InternetExplorer5.01或更高版本,硬件要求:Pentium133MHz或更快,内存要求128MB或更高。2.1B/S结构模式B/S(Browser/Server)结构即浏览器和服务器结构,它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。一、B/S模式的优点和缺点B/S结构的优点:(1)具有分布性特点,可以随时随地进行查询、浏览等业务处理;(2)业务扩展简单方便,通过增加网页即可增加服务器功能;(3)维护简单方便,只需要改变网页,即可实现所有用户的同步更新;(4)开发简单,共享性强。B/S模式的缺点:(1)个性化特点明显降低,无法实现具有个性化的功能要求;(2)操作是以鼠标为最基本的操作方式,无法满足快速操作的要求;(3)页面动态刷新,响应速度明显降低;(4)功能弱化,难以实现传统模式下的特殊功能要求。二、C/S模式的优点和缺点C/S模式的优点:(1)由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快;(2)操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求;(3)C/S结构的管理信息系统具有较强的事务处理能力,能实现复杂的业务流程。C/S模式的缺点:(1)需要专门的客户端安装程序,分布功能弱,针对点多面广且不具备网络条件的用户群体,不能够实现快速部署安装和配置;(2)兼容性差,对于不同的开发工具,具有较大的局限性。若采用不同工具,需要重新改写程序;(3)开发成本较高,需要具有一定专业水准的技术人员才能完成。三、B/S架构软件的优势与劣势(1)维护和升级方式简单;(2)系统的性能,在系统的性能方面,B/S占有优势的是其异地浏览和信息采集的灵活性;(3)系统的开发,C/S技术应更成熟、更可靠。四、C/S架构软件的优势与劣势(1)应用服务器运行数据负荷较轻;(2)数据的储存管理功能较为透明;(3)C/S架构的劣势是高昂的维护成本且投资大。2.2动态网站技术介绍由于系统的操作界面都是Web页面形式,而且需要对各种用户的具体请求进行动态处理并返回结果,这是一般静态Web页面技术所无法实现的,所以采用动态网页技术.目前动态网页技术有很多,可以说是层出不穷,比如CGI,ASP.NET,JSP,ASP,PHP等,本设计采用ASP.NET技术。ASP.NET(又称ASP+)是ASP的下一代版本,它并不只是ASP4.0,它是一个用于Web开发的全新框架,其中包含了许多新的特性。ASP.NET完全基于模块与组件,具有更好的可扩展性与可定制性,数据处理方面更是引入了许多激动人心的新技术,正是这些具有革新意义的新特性,让ASP.NET远远超越了ASP,同时也提供给Web开发人员更好的灵活性,有效缩短了Web应用程序的开发周期.ASP.NET与Windows2005Server/AdvancedServer的完美组合,为中小型乃至企业级的web商业模型提供了一个更为稳定,高效,安全的运行环境。2.3数据库技术关系型数据库(RelationalDatabase)是若干个依照关系模型设计的数据表的集合。也就是说,关系数据库是由若干张完成关系模型设计的二维表组成的。关系数据库由于以具有与数学方法相一致的关系模型设计的数据表为基本文件,不但每个数据表之间具有独立性,而且若干个数据表之间又具有相关性,这一特点使其具有极大的优越性,并能得以迅速普及。关系数据库有以下特点:(1)以面向系统的观点组织数据,使数据具有最小的冗余度,支持复杂的数据结构;(2)具有高度的数据和程序的独立性,用户的应用程序与数据的逻辑结构,以及数据的物理存储方式无关;(3)由于数据具有共享性,使数据库中的数据能为多个用户服务;(4)关系数据库允许多个用户同时访问,同时提供了各种控制功能,保证数据的安全性、完整性和并发性控制。安全性控制可防止未经允许的用户存取数据;完整性控制可保证数据的正确性、有效性和相容性;并发性控制可防止多用户并发访问数据时由于相干扰而产生的数据不一致。2.4ADO.NET连接数据库ADO.NET为用户提供了一种全新的数据库访问机制,它使得数据库编程变得简单。ADO.NET为用户提供两种数据访问的模式。一是连接模式(connected),利用ADO技术进行数据连接编程,是一种传统的数据库访问技术。还有一种是非连接模式(disconnected),ADO.NET才具有的。提供了更大的升级性和灵活性。在非连接模式下的数据访问,应用程序从数据源中获得所需的数据,然后断开与原数据源的连接并完成数据的更新工作。数据集对象可以从一个数据库中获得,以可以从一个XML数据流中获取,所以用户不需要考虑数据源的位置。在ADO.NET体系结构中数据提供者对象也是一个非常重要的部分,通过它可以访问数据库,产生数据集对象,同时它还支持数据连接模式下的数据库访问。ADO.NET的体系结构图如图2.1所示。应用程序连接模式非连接模式数据提供者对象数据集对象数据库XML数据图2.1ADO.NET的体系结构图3需求分析3.1可行性分析软件需求分析工作是软件生存周期中重要的一步。只有通过需求分析才能把软件功能和性能的总体概念描述为具体上的软件需求规格说明,从而奠定软件开发的基础。软件需求分析工作也是一个不断认识和逐步细化的过程。该过程将软件调研阶段的需求资料进行分析和设计,使软件范围逐步细化到详细定义的程度,并分析出各种不同的软件元素,然后为这些元素找到可行的解决办法。本章将从不同角度的需求分析问题,讲述软件需求类型、分析过程。3.1.1技术可行性在线音乐网站的主要特点是一方面可以动态地管理各种类型的音乐信息,主要准备好足够大的音乐资源,就可以按照要求自动生成各种静态页面;另一方面,计算机的音乐试听最大特点是时间空间的优势,任何人都可以随时随地根据自己的喜好选择喜欢的歌曲,网页音乐给用户带来了很大的方便。在本系统中,用户易于贯穿软件思想并掌握使用方法,前台可视化程度较高,人机交互能力较强,应用起来也较方便、直观,后台数据库功能强大,且更好的支持运行的系统。因此,开发此软件在技术上是可行的。3.1.2经济可行性软件的经济可行性是指软件所能带来的经济效益与开发设计所需要的投资相比,是否相适宜,同时还要看此软件能否真正给用户带来足够的经济效益。本人所开发的在线音乐点播平台正是基于为用户娱乐休闲目的而设计的。本系统的开发在经济上是完全可行的,开发此软件不需要大量的经费,而且是个人独立设计,可以节省许多费用,同时也可提高个人的实际动手能力。3.1.3操作可行性自从人类社会进入九十年代后,以及计算机技术的飞速发展,各种应用软件已日益为人们所接受。管理形式的计算机化是社会发展的必然趋势,各种智能化的软件层出不穷,而面对二十一世纪智能管理的挑战,减少了原来人工操作的费时费力的状况。并且可以避免人为的经济犯罪,管理层容易做出及时的决策。本系统用户平台直接面向普通用户,界面简单、明了,采用可视化界面,普通用户只需用鼠标就可以完成相应的数据操作;少量的数据输入是由后台管理员用户完成的。对于初次使用此系统的用户,不必经过复杂的培训和学习就可以掌握本系统的操作流程。由此可见,开发此系统在操作上是可行的。3.1.4法律可行性该音乐网站由本人设计实现,在法律上并未侵害他人权利,无须承担任何法律责任,所以在法律方面开发此系统是完全可行的。3.2系统概述音乐在线点播系统是一个典型的音乐网站,网站分为前台和后台2个大的模块,每个模块都有自己的权限功能。网站前台显示了曲目分类、歌手分类、专辑、播放列表和歌词动态滚动等。网站提供了用户注册功能,注册了的用户可以登录网站,实现普通用户没有的功能,例如可以下载歌曲以及收藏歌曲等。后台管理员对前台涉及到的所有信息进行管理。开发这样的一个网站实现了一般音乐网站的所有功能,本站的特色就在于前台分为2种角色可以具备不同的权限功能。3.3需求分析为了保证系统能够长期、安全、稳定、可靠、高效的运行,系统应该满足以下的性能需求:系统处理的准确性和及时性:系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足企业对员工信息处理的需求。系统的开放性和系统的可扩充性:系统在开发过程中,应该充分考虑以后的可扩充性,例如数据表中用户选择字段方式的改变,用户查询的需求也会不断的更新和完善。所有这些,都要求系统提供足够的手段进行功能的调整和扩充,而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、替换完成系统的升级和更新换代。系统的易用性和易维护性:要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。系统的数据要求:(1)数据录入和处理的准确性和实时性。(2)数据的一致性与完整性。(3)数据的共享与独立性。3.3.1播放器支持音乐格式需求本网站播放器支持主流音频格式,例如MP3格式(MPEG-1AudioLayer3),是由德国人在1987年开发出来的;WMA格式(WindowsMediaAudio),有很好的压缩率,占用空间是MP3的一半;WAV格式(波形格式文件),高品质音质,但是硬件代价很大;OGG格式,音效可以和MP3相媲美。3.3.2网站首页需求网站首页的必要元素:虽然首页元素根据企业性质的不同会做改变,但是基本的页面元素必须要具备。如:导航栏、LOGO、Banner、按钮、图片、文字。(1)导航栏:导航栏如果设计得恰到好处,是会给网页本身增色很多。导航栏有一排、两排、多排、图片导航和Frame框架快捷导航(百度音乐就是这种)等等各种情况的设计,有时候是横排,有时候则是竖排。另外还有一些动态的导航栏,如很精彩的Flash导航。(2)LOGO:LOGO是网站为了给大家一个比较直观的信息的表达工具。网站的LOGO,一般以静态的居多,也有动态的,但是LOGO的特点都是在表达网站的信息,是一个网站的直接的表现窗口。(3)Banner:是网站的广告展示,对于引起用户注意和记忆、增强画面效果有重要作用。(4)按钮:如网页中的“用户登录”、“登录按钮”、“排行榜”等等类似物件,通常都统称为按钮。它是引导用户进入其他页面的一个重要端口。3.4计算机软件配置和开发平台3.4.1计算机系统硬件配置主板:宏碁EA40_HCCPU:Intel(R)Core(TM)i5-3210MCPU@2.50GHz(4CPUs)内存:4GB(海力士DDR31333MHz/金士顿DDR31333MHz)硬盘:希捷ST9500325AS(500GB/5400转/分)光驱:先锋DVR-117CH显卡:集成IntelGMA3100显卡声卡:集成RealtekALC8838声卡网卡:集成AR8132百兆网卡显示器:友达AUO183C3.4.2计算机系统软件配置操作系统:Windows8.1update安装软件:MicrosoftOffice2010AdobeAcrobat10.0ProfessionalInternetExplorer11.0 VS2015+SQL200143.4.3编程环境与工具本系统在开发时选用了功能较为强大的的VS2015和C#作为开发语言,同时选项用了SQL2014数据库,由于这些软件产品都是Microsoft公司的产品,因此彼此之间的兼容性较好,开发出的应用系统稳定性较高。VS2015具有可视化的开发环境,可以快速完成系统的开发,内部集成的数据访问通道,使得可以轻松方便的对数据库进行管理。数据库采用MicrosoftSQL2014,要据该系统要求,采用它完全可适合我们的工作需求,并且它所支持的类型十分丰富,维护简便,费用比较低,对使用人员的素质要求不是很高,容易升级。4总体设计总体设计阶段的基本目标就是概要地回答系统应该如何实现。在需求分析的基础之上规划出了系统的功能模块,以及在此分析基础上设计出的具体的、可以满足本系统全部需求的数据库。设计在任何工程产品或系统中,是开发阶段的第一步。可以定义为应用各种技术和原理,对一个设备、一个过程或一个系统,做出足够详细的决策,使之有可能在物理上得以实现的过程。4.1系统模块总体设计本阶段设计的基本目标是解决系统如何实现问题,也叫做概要设计,本阶段主要任务是划分出系统的物理元素及设计软件的结构,完成软件定义时期的任务之后就应该对系统进行总体设计,即根据系统分析产生的分析结果来确定这个系统由哪些系统和模块组成,这些系统和模块又如何有机地结合在一起,每个模块的功能如何实现。系统设计的目标是使系统实现拥有所要求的功能,同时,力争达到高效率、高可靠性、可修改性,并且容易掌握和使用。在线音乐点播平台是一个典型的音乐网站,网站分为前台和后台2个大的模块,每个模块都有自己的权限功能。网站前台显示了曲目分类、歌手分类、专辑、播放列表和歌词动态滚动等。网站提供了用户注册功能,注册了的用户可以登录网站,实现普通用户没有的功能,如对音乐的收藏功能。后台管理员对前台涉及到的所有信息进行管理。开发这样的一个网站实现了一般音乐网站的所有功能,本站的特色就在于前台分为2种角色可以具备不同的权限功能。4.1.1音乐平台系统的结构根据网站的角色对网站角色分为3种类型,一种是未注册用户,一种是网站用户,以及网站的后台管理员。未注册的用户功能权限如下:实现全选歌曲播放:对选择的音乐进行在线播放。查看音乐排行榜:可以查看系统对用户点击数的统计进行排行的排行榜。歌手名首字母搜索:对歌手进行分类,根据歌手名首字母信息快速定位歌手以方便查找该歌手的所有歌曲。注册的用户除了未注册的功能之外还具有以下两种权限:歌曲收藏:用户登录网站之后可以对自己喜欢的歌曲进行收藏,方便下次登录时查找。歌曲下载:用户登录网站之后可以下载自己喜欢的歌曲在用户本地电脑上。管理员权限:添加删除歌曲和专辑:对歌曲信息进行添加,修改和删除等操作。用户信息管理:对网站前台注册了的用户进行查看和删除等操作。密码管理:修改管理员密码。退出后台管理:管理员在后台可以退出管理,这样就清除缓存中的管理员账号和密码,如果需要再进入后台需重新登录。系统功能结构图如图4.1所示。图4.1系统功能结构图4.1.2音乐平台系统的流程打开网站首先展示的是本程序的首页,首页中包含了用户注册与登录,以及管理员推荐的部分排行榜,导航则显示歌手、排行榜、分类、MV、专辑、我的音乐等选项,当用户点击歌曲时将跳转播放模块,播放页面内包含对当前歌曲的一些播放操作、播放列表、歌词显示、用户收藏模块以及歌曲下载模块等,系统流程图如图4.2所示。图4.2系统流程图4.2数据库设计数据库设计阶段将具体地设计目标系统,得出新系统软件的详细信息。同时,要求设计出的信息简明易懂,便于下一阶段用某种程序设计语言在计算机上实现。数据库设计的注意事项:1.定义的对象命名规范;2.方便的数据查询,支持多条件查询;3.了解用户需求,根据业务需要创建数据表;4.创建数据字典和E-R图表;5.数据库维护。4.2.1数据字典数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。数据库数据字典不仅是每个数据库的中心,而且对每个用户也是非常重要的信息,用户可以用SQL语句访问数据库数据字典。数据字典的作用是在软件分析和设计的过程中给人提供关于数据的描述信息。数据流程图配以数据字典,就可以从图形和文字两个方面对系统的逻辑模型进行完整的描述。它主要是对数据流图中的数据流、处理逻辑、外部实体、数据存储和数据项等方面进行具体的定义,我们不能手工修改数据字典里的信息。4.2.1.1数据元素的定义数据元素(dataelement)是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。包括如下内容:数据项描述={数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系,数据项之间的联系}。其中,后两项定义了数据的完整性约束条件,用于数据校验。具体内容如表4.1所示。表4.1音乐网站数据元素定义表4.2.1.2数据结构数据结构指的是数据之间的相互关系,即数据的组织形式。一般包括数据的逻辑结构存、储结构和数据的运算三个方面的内容。具体内容如表4.2所示。表4.2音乐网站基本数据结构 数据结构编号 数据结构名称 含义说明 组成 DS-1 管理员 描述管理员信息 (Id,Aname,Apwd) DS-2 专辑信息表 描述专辑信息 (Id,name,img_url,singerid) DS-3 评论表 描述评论信息 (Id,MusicId,Comments,Addtime,AddUserName) DS-4 音乐收藏 描述音乐收藏信息 (Id,MusidId,Userid,Createtime) DS-5 用户 描述用户信息 (id,name,logined,passwords,email,CreateTime,question,answer,CreateTime) DS-6 音乐 描述音乐信息 (id,name,filename,lrcname,typeid,sectid,moodid,languageid,clicktime,specialid) DS-7 音乐类别 描述音乐类别信息 (Id,name,content,Addtime) DS-8 流派类别 描述音乐流派信息 (Id,sectname,createtime) DS-9 用户收藏 描述专辑信息 (Id,AmId,UserName,Addtime) DS-10 歌手信息 描述歌手信息 (Id,name,code,classid,img_url,createtime,sex,birthtime,clicktime) DS-11 语种信息 描述音乐语种 (id,name,createtime)4.2.2数据库E-R图E-R图也即实体-联系图(EntityRelationshipDiagram),提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。构成E-R图的基本要素是实体型、属性和联系。实体型(Entity)用矩形表示,矩形框内写明实体名;属性(Attribute)用椭圆形表示,并用无向边将其与相应的实体连接起来;联系(Relationship)用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)。数据库E-R图如图4.3所示:图4.3数据库E-R图4.2.3数据表的设计本系统数据库采用SQL2014数据库,系统数据库名称为“OnlineMusic__DB”。数据库“OnlineMusic__DB”中包含11张表。在SQL2014数据库设计中,表是SQL2014数据库中最基本的对象之一,这个基础对象对于数据库来说,非常重要,因为其设计是否合理,直接跟数据库的性能相关。所以,要重视表的设计,从基础做起,为提升数据库的性能而努力。数据库“OnlineMusic__DB”由下面多个表格组成,各个表的命名及字段命名都是以相应名称的拼音首字母组合而成,各个表格的设计结果如下表格所示,每个表格表示在数据库中相对应的一个表。表4.3管理员表——AdminInfo 列名 数据类型 意义 允许为空 备注 AdminID int 编号 否 主键 AdminName varchar 账号 否 AdminPwd varchar 密码 否 表4.4专辑信息表——tb_Specials 列名 数据类型 意义 允许为空 备注 Id Int 编号 否 主键 name nvarchar 名称 否 Img_url varchar 封面路径 是 Addtime datetime 添加时间 否 Singerid int 歌手 否 表4.5音乐收藏信息表——tb_collect 列名 数据类型 意义 允许为空 备注 Id int 编号 否 主键 Musicid Int 音乐编号 否 外键 Userid int 收藏人 否 外键 CreateTime datetime 收藏时间 否 表4.6用户信息表——tb_users 列名 数据类型 意义 允许为空 备注 id int 编号 否 主键 name nvarchar 姓名 否 Loginid varchar 登录账号 否 Passwords varchar 密码 否 question varchar 密码问题 否 answer varchar 密码答案 否 Email varchar 电子邮件 否 CreateTime datetime 注册日期 否 表4.7音乐信息表——tb_Musics 列名 数据类型 意义 允许为空 备注 Id int 歌曲编号 否 主键 name nvarchar 歌曲名称 否 Typeid int 类别编号 否 外键 TypeName nvarchar 类别名称 否 SingerId int 歌手编号 否 外键 Singer nvarchar 歌手名称 否 specialid int 专辑编号 否 外键 ds text 歌曲描述 否 CreateTime datetime 添加时间 否 clicktime int 点击次数 否 filename nvarchar 歌曲地址 否 Lrcname Nvarchar 歌词地址 是 Sectid Int 流派编号 否 外键 Moodid Int 情绪编号 否 外键 Languageid Int 语种编号 否 外键表4.8音乐类别信息表——tb_musictype 列名 数据类型 意义 允许为空 备注 Id int 类别编号 否 主键 Typename nvarchar 类别名称 否 表4.9流派类别表——tb_musicsect 列名 数据类型 意义 允许为空 备注 Id int 类别编号 否 主键 sectname nvarchar 类别名称 否 表4.10播放历史信息表——tb_history 列名 数据类型 意义 允许为空 备注 Id int 编号 否 主键 Userid int 用户编号 否 外键 musicid int 歌曲用户 否 外键 Createtime datetime 收藏时间 否 表4.11歌手信息表——tb_singers 列名 数据类型 意义 允许为空 备注 Id int 编号 否 主键 Name nvarchar 歌手姓名 否 Code Char(1) 首字母大写 否 Classid Int 类别编号 否 外键 Img_url Varchar 歌手照片路径 是 Sex Varchar 性别 是 Clicktime Int 点击数 否 表4.12语种分类表——tb_musiclanguage 列名 数据类型 意义 允许为空 备注 Id int 编号 否 主键 Name nvarchar 语种名称 否 Createtime datetime 播放时间 否 表4.13MV信息表——tb_mvs 列名 数据类型 意义 允许为空 备注 Id int 编号 否 主键 title nvarchar MV名称 否 filename nvarchar MV路径 否 singerid Int 歌手编号 否 外键 Img_url Varchar MV照片路径 是 5详细设计详细设计的主要任务就是将软件分解成模块。模块是指能实现某个功能的数据和程序说明、可执行程序的程序,可以是一个函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和可更换的功能单元。模块的主要目标就是给出软件的模块结构,用软件结构图表示。详细设计的首要任务就是设计模块的程序流程、算法和数据结构,常用方法还是结构化程序设计方法。5.1网站首页界面设计首页是网站的第一个页面,也是打开网站的第一个页面,本音乐网站首页显示了很多信息,包括界面的导航信息、用户登录框、音乐类别、音乐专辑、歌手列表、MV更新公告、最新音乐和热门音乐等用户关注的信息。本系统首页的运行效果如图5.1所示。图5.1网站首页5.2主要模块功能设计5.2.1用户注册管理模块用户模块包括网站用户的注册、用户登录、用户修改注册信息等几个基本重要的模块。用户注册信息包括用户登录账号、用户密码、姓名、用户密码问题、用户密码问题答案、用户邮编等信息,该模块实现功能如表5.1所示。表5.1用户管理模块功能表 功能名称 定义 用户注册 实现用户注册功能 用户登录 实现用户登录功能 用户管理 用户对用户自己的信息进行管理操作用户注册模块界面如图5.2所示。图5.2用户注册页面用户注册是一个多本文给予用户注册时填写的信息,当用户点击确定后,后台处理获取文本框的内容并检查内容符合后写如数据库,具体实现代码如下: //用户注册实现model=dal.FindByWhere("LoginID='"+txtLoginID.Text+"'");if(model!=null){MsgBox.Alert("对不起,该账号已经存在");}else{model=newModel_tb_users();model.name=txtUserName.Text;//用户注册名model.loginid=txtLoginID.Text;//用户登录名model.CreateTime=DateTime.Now;//注册时间model.passwords=txt_NewPwdOK.Text;//密码model.email=txtEmail.Text;//邮箱model.question=DropDownList1.SelectedItem.Text;//找回密码问题model.answer=txtAnswer.Text;//问题答案dal.Insert(model);MsgBox.Alert("注册成功!","Default.aspx");}5.2.2我的音乐在线播放模块播放模块主要包含了根据用户搜索历史为用户推荐的歌曲列表、播放列表、上一首、下一首、音量调节、暂停、播放、播放进度条、歌词滚动显示以及为已登录的用户添加的下载与收藏功能等,该模块实现功能如表5.2所示。表5.2我的音乐在线播放功能 功能名称 定义 推荐列表 为用户推荐的歌曲 播放列表 显示当前播放的歌曲列表 上一首 点击实现播放当前歌曲在歌曲列表中的上一首歌曲 下一首 点击实现播放当前歌曲在歌曲列表中的下一首歌曲 音量调节 调节音量大小 暂停/播放 实现暂停/播放歌曲功能 播放进度条 调节当前音乐播放的进度 歌词滚动 根据播放进度动态滚动歌词我的音乐在线播放页面如图5.3所示。图5.3音乐播放界面我的音乐播放功能是调用jquery.player已经封装好的播放器代码,其实现过程是先设计好布局,在通过初始化player插件后,将需要播放的信息通过后台处理之后赋值给前台的jquery中,而歌词的显示是通过解析.lrc文件后将歌词信息赋值到指定的容器中并动态获取当前播放歌曲的时间来实现歌词内行与行之间的滚动效果,具体实现代码如下: //播放功能myjplayer=$("#jquery_jplayer_1");json=eval('(<%=json%>)');//json为后台处理后的数据,数据格式为:歌曲名,作者,歌曲路径length=json.length;myjplayer.jPlayer({ready:function(){playMusic(myjplayer);buildPlayList();},ended:function(event){//播放结束触发的事件if(curindex<length-1){curindex+=1;playMusic(myjplayer);buildPlayList();}else{curindex=-1;}},swfPath:"MusicPlayer",supplied:"mp3"//播放支持格式5.2.3收藏与下载模块歌曲收藏与下载,见名知义,无非就是对歌曲收藏和下载歌曲当本地电脑上,而这模块需要在该网站注册并登录的用户才具有的功能,该模块的实现功能如表5.3所示。表5.3收藏与下载功能 功能名称 定义 歌曲收藏 注册并登录的用户实现对歌曲的收藏 歌曲下载 注册并登录的用户实现歌曲下载到本地电脑上歌曲收藏与下载页面如图5.4和图5.5所示。图5.4收藏与下载图5.5我的收藏当用户选择歌曲时点击收藏按钮,后台将对选中的歌曲信息以及当前登录的用户信息添加到数据库中的用户收藏表,而下载功能则是在后台取得歌曲的相对路径之后通过TransmitFile函数实现下载功能,具体实现代码如下: //歌曲收藏case"Collect":if(UserOnline.UserID==0)//判断是否登录{context.Response.Write("-2");}else{ID=context.Request.QueryString["ID"];if(DbHelperSQL.GetSingle("selectcount(1)fromtb_collectwheremusicid="+ID+"anduserid="+UserOnline.UserID).ToString()!="0")//判断是否已收藏{context.Response.Write("-1");}else{//实现收藏功能Model_tb_collectmodel=newModel_tb_collect();model.musicid=Convert.ToInt32(ID);model.userid=UserOnline.UserID;model.CreateTime=DateTime.Now;newDAL_tb_collect().Insert(model);context.Response.Write(InfoType.Success.ToString());}}break;//歌曲下载if(UserOnline.UserID==0)//判断是否登录{Response.Write("<script>alert('请先登录下载!');</script>");}Else//获取歌曲相对路径并实现下载{stringfilename=Request.QueryString["mp3"].ToString();filename=filename.Replace("http://localhost:19390/UploadFile/Music/","");Response.ContentType="application/x-zip-compressed";Response.AddHeader("Content-Disposition","attachment;filename="+filename);filename=Server.MapPath("UploadFile/Music/"+filename);Response.TransmitFile(filename);}5.2.4歌曲、歌手的分类与点播次数衡量的排行榜歌曲的分类是根据流派、情绪、语种进行分类;歌手的分类则按照华语、欧美、日韩以及歌手名的首字母进行分类;而各类的排行榜是根据该歌曲播放次数所决定的,该模块的实现功能如表5.4所示。表5.4歌曲、歌手分类及排行榜功能 功能名称 定义 歌曲分类 根据歌曲类型进行分类 歌手分类 根据歌手出生地区以及歌手名首字母分类 排行榜 根据歌曲类别和播放次数来衡量的排行榜歌曲分类页面如图5.6所示。图5.6歌曲分类歌手分类如图5.7所示。图5.7歌手分类排行榜如图5.8所示。图5.8排行榜在此模块中代码都是相类似的,都是通过对数据库的查询,只是查询的条件不同。将查询得到的数据以datatable形式保存并绑定前台的Repeater控件中,数据就能得以实现,由于代码比较多,现列出排行榜的具体实现的代码,代码如下: //排行榜stringwhere="";//设置查询条件语句if(Request.QueryString["typeid"]==null||Request.QueryString["typeid"]=="-2"){where+="orderbytb_musics.CreateTimedesc";}//新歌榜elseif(Request.QueryString["typeid"]=="-1"){where+="orderbytb_musics.clicktimedesc";}//热歌榜else{where+="andtypeid="+Request.QueryString["typeid"]+"orderbytb_musics.clicktimedesc";}//获取的信息与类别表中的id一致,可直接作为条件语句stringsql="SELECTtop20tb_musics.*,tb_singers.namesingerNameFROMtb_singersINNERJOINtb_musicsONtb_singers.id=tb_musics.singeridwhere1=1";sql+=where;DataTabledt=DbHelperSQL.QueryDataTable(sql);Repeater1.DataSource=dt;Repeater1.DataBind();5.2.5歌曲库与用户管理歌曲库与用户管理属于后台管理,直属于管理员的操作,也就是后台管理的相关操作,主要包括用户管理,音乐管理,MV管理,歌手管理,专辑管理,用户收藏与播放管理,以及系统管理中的修改密码和退出登录等,该模块的实现功能如表5.5所示。表5.5后台功能 功能名称 定义 用户管理 查询、修改并删除用户信息 音乐管理 查看、添加并修改音乐信息 MV管理 查看、添加并修改MV信息 歌手管理 查看、添加并修改歌手信息 专辑管理 查看、添加并修改专辑信息 用户收藏管理 查看、删除用户收藏歌曲的纪录 用户播放历史 查看、删除用户播放歌曲的纪录 修改密码 查看、添加并修改管理员信息 退出登录 退出后台登录后台管理页面如图5.9所示。图5.9后台管理5.3输入输出设计输入方式的设计主要是根据总体设计和数据库设计的要求来确定数据输入的具体形式。常用的输入方式有:键盘输入、磁盘输入、光盘读入等几种形式。通常在设计新系统的输入方式时,应尽量利用已有的设备和资源,避免大批量的数据重复多次地通过键盘输入。因为键盘输入不但工作量大,速度慢,而且出错率较高。以下是本系统的输入设计:输入设计 编号:001如表5.6所示。表5.6输入设计001 输入数据代号: D1 输入设备和介质: 键盘 输入数据名称: 系统用户信息 输入时间和频率: 适时 输入源: 网站用户 共享范围: 网站前台001输入格式及内容如表5.7所示。表5.7001输入格式及内容 数据项名称 类型 长度 备注 用户名 NvarChar 20 密码 NvarChar 20 输入设计 编号:002如表5.8所示。表5.8输入设计002 输入数据代号: D2 输入设备和介质: 键盘 输入数据名称: 音乐信息 输入时间和频率: 适时 输入源: 管理员 共享范围: 整个系统002输入格式及内容如表5.9所示。表5.9002输入格式及内容 数据名称 类型 长度 备注 歌曲名称 nvarchar 歌曲类型 nvarchar 50 歌曲歌手 nvarchar 20 歌曲图片 nvarchar 10 歌曲文件 nvarchar 歌词文件 nvarchar 歌曲日期 Date 本系统的输出设计的内容包括输出内容、输出方式和输出介质三方面。1.输出内容:歌曲信息。2.输出方式:HTML输出。3.输出介质:浏览器。本系统的输出设计见下表:输出设计编号:003如表5.10所示。表5.10输出设计003 输出名称 歌曲信息 输出介质 显示器 输出类型 显示 输出时间 随机003输出格式及内容如表5.11所示。表5.11003输出格式及内容 歌曲名称 歌曲类别 歌手 歌曲时间 歌曲图片 歌词显示 歌曲下载 所属专辑 6系统测试与性能分析6.1测试的任务和目标6.1.1测试的任务系统测试是为了发现错误而执行程序的过程,成功的测试是发现了至今尚未发现的错误的测试。系统测试是保证系统质量和可靠性的关键步骤,是对系统开发过程中的系统分析系统设计和实施的最后复查。测试的目的就是希望能以最少的人力和时间发现潜在的各种错误和缺陷。应根据开发各阶段的需求、设计等文档或程序的内部结构精心设计测试用例,并利用这些实例来运行程序,以便发现错误。程序编写出来并不是软件开发的结束,因为,一个可靠的程序必须经得住考验,这就是调试与测试得工作了。不可否认的是,这一步是软件开发的最后一步,也是重要的一步。测试不仅包括,系统调试与测试,同时还包含后期的系统维护,当然,考虑到这是毕业设计的内容,因此,系统维护可以暂时不计算在内,单这不能影响测试在本系统开发中的重要地位。6.1.2测试的目标1.管理员登录测试:后台管理员登录系统管理模块,管理员输入用户名和密码,模块通过连接到数据库查找用户信息进行检验。2.歌曲添加测试:添加歌曲信息并上传歌曲文件与歌词文件。3.歌曲下载测试:测试用户下载歌曲。4.用户注册登录以及歌曲收藏等。5.歌曲在线试听测试与歌词显示等6.歌曲与歌手的检索。6.2计划测试有两种方法:黑盒测试和白盒测试。黑盒测试又称为功能测试,在程序接口进行,只检查程序功能是否能够按照规格说明书的规定正确使用,程序是否能适当地接收输入数据并发生正确的输出信息,而且要
/
本文档为【网页版在线音乐播放器详细设计毕业设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索