KTV点歌管理系统的开发与实现.docx
《KTV点歌管理系统的开发与实现.docx》由会员分享,可在线阅读,更多相关《KTV点歌管理系统的开发与实现.docx(30页珍藏版)》请在冰豆网上搜索。
KTV点歌管理系统的开发与实现
摘要
本论文主要是基于C/S结构的KTV点歌管理系统设计与实现进行全面系统分析和全面总结,系统采用C#作为开发语言,VisualStudio作为开发使用工具,SQLServer2005作为后台数据库。
系统的设计主要是实现歌星点歌模块、歌名点歌模块、新歌推荐模块、语种点歌模块和后台歌曲的添加,后台歌曲添加是本次开发的重点。
后台歌曲添加功能,可以做到用户密码验证登录,可以随时修改、添加和删除歌手、歌曲信息等相关材料,及时更新歌曲目录,以便用户能够更多的了解歌手和歌曲信息,满足不同客户的需求。
本论文对本次设计系统的开发背景、前景意义、系统分析、设计概要、详细设计、测试方法做了详细的介绍,并且做了总结。
系统测试主要用到了试探法和演绎法,并且在个人几个月的努力和指导老师的帮助下,系统经过调试,能够成功运行。
在已经掌握的技术支持下,实现了预期的设计理想。
关键词:
点歌管理系统;KTV点歌;歌曲库
ABSTRACT
ThispaperismainlyaimedatthedevelopmentofKTVVODmanagementsystemandimplementation,usingC#asthedevelopmentlanguage,VisualStudio2005asadevelopmenttool,SQLServer2005asthebackgrounddatabase.Thedesignofthissystemismainlytoaddachievesingersongmodule,titlesong,songrecommendationmodule,modulelanguagesongmoduleandbackgroundmusic,thesongsaddedisthefocusofthedevelopmentof.Thebackgroundsongaddedfunction,candotheuserpasswordauthenticationlogin,canbemodifiedatanytime,addanddeletethesingerinformationandsonginformationandotherrelatedmaterials,updatethelistofsongs,sothatuserscanlearnmoreaboutthesingerandthesonginformation,meettheneedsofdifferentcustomerneeds.Inthispaper,thedesignofsystemdevelopmentbackground,significance,systemanalysis,summarydesign,detaildesign,testmethodsareintroducedindetail,andmadeasummary.Systemtestingismainlyusedtotestmethodandthedeductivemethod,andinindividualmonthsofhardworkandinstructsunderteacher'shelp,throughdebugging,thesuccessofoperation.Intheabovetechnicalsupport,toachievethedesignidealexpected.
Keywords:
VODmanagementsystem;KTV;songlibrary
第1章绪论
1.1课题背景
随着计算机技术的快速发展,该技术也在各个领域快速的应用,已经涉及到人类生产和生活的各个方面。
数据库技术是计算机科学技术一个重要的分支,是当前现代化管理的重要组成部分,也是近年来比较热门研究数据共享的一门学科,结合其他的技术开发各种应用软件,方便人们的生产和娱乐。
伴随着科技的进步,人们生活水平的逐步提高,随之而来带来工作和生活压力的加大,这使得很多人需要一种释放生活压力的方式。
KTV点歌最先起源于日本,之后引入我国,这种娱乐方式很快被大家认可,这也促进了音乐爱好者开发实用与不同场所的KTV点歌管理系统。
KTV点歌最早是起源于日本,主要是由于日本的风俗习惯引起的。
在日本的风俗习惯是,如果一个男人回家太早,就会引起左邻右舍看不起,认为一个男人在外面工作,连一个应酬都没有,同时也会被自己的妻子看不起。
所以更多的日本人在每天下班后会聚集在酒吧或茶楼消磨下班后的剩余时间,一直聊到很晚才回家。
后来随着时间的推移,在平时消磨时间中找点乐子做,就会在酒吧喝喝酒,对着电视唱唱歌。
最后这种习惯被慢慢的演变为现在的KTV,后来发展为一种流行的消遣娱乐生活方式。
后来这项活动传入我国宝岛台湾,随之传入大陆,最后有了今天的KTV景象。
在20世纪八十年代末期,我国才开始出现歌舞厅。
卡拉OK闯入中国的时间较晚,但是发展却很迅速。
在1988年时期,北京开始出现歌舞厅,有些酒楼、饭庄、酒吧,白天进行餐饮营业,在夜晚,特意邀请专业的艺术团队乐队,音响、歌手为顾客演唱,在1990年已经发展为150多家,1991年发展为270多家,直到1993年,已经发展为800多家,发展速度极快,并且形式多样化。
1.2前景意义
随着人们对生活质量的提高,娱乐行业正在占有重要的地位。
在现代,更多的人在下班后,吃过饭,多会走进KTV唱唱歌、聊聊天,已经成为人们生活中重要的一部分。
随着娱乐行业的飞速发展,KTV点歌管理系统的需求也在变得更加的广泛,需求更高。
为了在更大程度上满足不同客户的需求,更多的软件开发者较为靠拢娱乐商业方面的技术开发。
并且通过固定的客户要求进行需求分析,系统结构分析和详细的系统设计等,从而开发一款更能满足更多使用客户的需求。
1.3系统特征
基于C/S结构的KTV点歌管理系统实现了不需要插卡或者光碟播放功能,只需要简单是数据操作就可实现,不需要专业的人员来操作,这样可以更加节省劳力和物力,降低成本,同时增强了时效性。
在进入21世纪以来,利用互联网这一平台,已经给人们的生活带来了极大的方便。
本次开发的KTV点歌管理系统,使用简单,后期维护费用更加低廉,并且可以随时添加数据库歌曲,方便、快捷,不仅提高了使用效率,而且也顺应了网络化的时代潮流,在更大程度上满足不同客户的需求。
1.4系统开发环境
本次基于C/S结构设计与开发的KTV点歌管理系统,是根据多家糖果KTV量身打造的桌面级服务和控制的。
在开发该程序时采用C#做为开发语言,计算机安装VisualStudio2005作为开发工具,在数据库建设方面采用SQLServer2008。
系统的开发硬件环境为:
CPU在P44.0以上,内存在1GB以上,硬盘在60GB以上。
1.4.1VisualStudio2005简介
VisualStudio2005是目前为止比较完整的一款软件开发集,也是微软公司杰出的软件之一。
该软件可以用来生成XMLWebServices、ASP.NETWeb应用程序、桌面使用程序和移动应用程序等。
使用该软件开发程序,使用简单,容易操作,还可以利用现有的IDE共享工具,建立混合语言来解决实际的应用问题。
目前,更多的软件开发者采用此工具开发更多的应用软件。
【1】
1.4.2C#语言简介
C#语言作为一种面向对象的高级语言,该语言可以支持封装、继承和多态性概念。
在C#语言中,全部的变量和方法,其中也包括Main方法,都可以封装在类定义中。
类方法可以直接从一个父类中继承。
该语言使用更加广泛,可以实现任何一个数量的借口。
语言通俗易懂,使用灵活,只要有一定C语言基础的程序员,在很短的时间内就可以自主开发软件。
但是在该语言中,结构类似于一个轻量类,是一种堆栈分配类型,虽然可以实现接口,但是不支持继承类的实现。
【1】
1.4.3SQLServer简介
SQLServer是一个关系数据管理系统,也是支持客户/服务器结构的数据库管理系统。
客户/服务器结构能够把整体的数据处理任务划分到客户机上,用来完成的任务和在数据库服务器上完成任务。
早在1988年,微软公司推出了第一款OS/2版本的软件开发平台。
在随后WindowsNT上市后,微软公司开始着重专注于Windows操作系统上的SQLServer。
采用SQLServer的主要优点是数据库只是返回用户所需要的数据,节省了网络上的数据流量,同时更能加速数据的传送速度。
SQLServe是把数据存储在服务器上,而不是把数据文件分布在每个客户机上,这样每台用户机都可以访问数据库。
同时,数据的备份管理和恢复数据文件相对也比较容易。
【2】
第2章系统分析
2.1可行性分析
本次开发的KTV点歌管理系统,根据大学学过的C#语言和数据库等课程,对计算机语言有着一定的了解,并且开发简单,不需要更多的人力和物力,只要简单的配置和搭建环境,就可以研发。
开发工具及搭建环境为:
VisualStudio2005、SQL2005;一台或两台以上联局域网的windows平台主机,在本地电脑安装数据库就可以运行。
设计开发KTV点歌管理系统是非常具有现实意义的。
主要可以从以下三个方面进行可行性分析:
1.技术可行性。
本次开发的KTV点歌管理系统是基于C/S结构框架,操作是通过客户端实现,并且根据所学的计算机语言基础,采用C#作为开发程序语言。
SQLServer2008可以快速的建立和部署各类的商业智能解决方案,可以进一步的推动企业信息化的管理。
丰富的数据挖掘算法和全新的数据分析工具,可以将总多的用户更加深入的进行决策支持和业务监控。
从使用语言和开发工具而言,本次开发的软件是可行的。
应用C#语言开发KTV点歌管理系统是可行的。
2.经济可行性。
本次开发的KTV点歌管理系统属于远程控制网络版广告机的应用系统,在使用时可以统一管理,还可以定制每一个区域、组或着广告机的播放列表、能够控制播放时间、停止播放、发送字幕、呼叫服务员、控制声音、文件管理等所有功能。
我相信开发此系统能够更大程度上满足不同顾客的需求,同时带来更大的经济收益。
3.操作可行性。
本系统采用C#语言作为开发语言,MicrosoftVisualStudio作为开发工具。
在页面设计时,界面风格主要以简洁大方,便于操作为主,并且设计了多语种歌曲模块,以满足不同客户的需求。
操作该系统,不需要专业计算机知识,只要简单是培训就可操作,更能节省人力资源的浪费。
2.2需求分析
通过对多家卡拉OK的了解,要求本次开发的KTV点歌系统具有以下功能:
登录界面管理,歌名点歌(歌曲名称查找和拼音缩写查找)、新歌推荐、已点歌曲、语种点歌(热门流行、经典老歌、影视金曲、游戏动漫、京剧戏曲和儿歌)、歌星点歌(男歌手、女歌手和组合歌手)、金曲排行。
管理播放器,应该具有账号登录管理,酒水、呼叫服务、喝彩、调音、伴唱、重唱、暂停、切歌和静音等,同时可以查看已点歌曲和已唱歌曲。
配置播放器,播放器要有具体的名称、密码、音频输出设置、IP设置、时间设置、存储文件格式、自动开始设置。
媒体库管理,在设计歌曲管理时,采用SQLServer2008,是基于C/S结构,从服务器到客户端,使用数据流量小,时效性强。
而且歌曲添加快捷、方便,后期的数据管理也是相对比较容易。
对歌曲库资源可以添加,删除,修改。
同时伴有歌手的介绍,如姓名、性别、歌手类型、歌手描述和歌手照片等。
播放列表管理,具体有播放列表的生成、修改、删除、添加。
计划播放列表管理,具体有计划播放列表的生成,修改,删除,设置。
根据对系统的分析,画出系统的部分系统流程图,如下图所示:
图2.1系统流程图
图2.2系统流程图
数据流图,如图2.3所示:
图2.3数据流图
第3章概要设计
3.1项目规划
KTV点歌管理系统是一个功能完善的使用于酒吧、KTV和歌舞厅等场所,此次研发的点歌管理系统,全部功能进行控制管理和歌曲库管理,歌曲添加管理系统简便,可以快速的编辑播放列表,并且下发到客户端。
设计的KTV点歌管理系统主要有以下几大模块构成:
1.歌星查询模块
2.歌名点歌模块
3.播放列表管理模块
4.计划播放列表模块
5.金曲排行查询模块
6.语种点歌模块
7.播放器配置模块
设计的部分实体图,如下图所示:
图3.1分类点歌实体图
图3.2金曲排行实体图
对本次设计系统的部分E-R图,如下图3.3所示:
图3.3系统E-R图
3.2系统功能模块图
本次开发的KTV点歌管理系统,主体界面包括三个内容:
管理维护界面,歌曲点选界面,歌曲播放及控制界面。
在各个界面的设计时,根据功能模块不同,设计的界面不同,能给人以很好的视觉享受。
1.歌曲库管理模块。
歌曲库需要管理员登录码登录,并可对其管理和维护,对歌曲库的数据文件进行添加、修改、删除歌手和歌曲信息等功能。
2.歌曲查询模块。
为了快速的查找歌曲,提供了常用的查询功能,使用用户可以在众多的歌曲信息中快速找到所需的信息。
(1)语种点歌:
选择语种点歌后,显示的是热门歌曲、经典老歌、影视金曲、游戏动漫、京剧戏曲、儿歌。
在选择其中的任何一项后,进入相应的歌曲列表,然后选择自己所喜欢的歌曲。
(2)拼音点歌:
在选择歌名点歌后,进入拼音点歌模块,点击输入歌名的首写大写字母,在查找的歌曲列表中选择自己喜欢的歌曲。
(3)歌星点歌:
在选择歌星点歌后,显示的是男歌手、女歌手和组合歌手,并且点击每一项,都会出现大陆、港澳、台湾、欧美和日韩的众多歌手,点击每一项,可以进入相应的歌曲列表,然后选择自己喜欢的歌曲。
(4)字数点歌:
字数点歌是根据歌曲名称有多少字而选择歌曲,如一个字、两个字或等多等,在选择每一项后,进入歌曲列表,选择所要选择的歌曲。
3.歌曲点播。
本次研发的KTV点歌管理系统,在用户通过分类浏览和查找的方式选择歌曲后,被选择是歌曲自动添加到播放列表中,并且按照用户选择的顺序依次播放。
在播放歌曲的同时,可以选择原音和伴奏,不同的播放效果可以满足不同用户的需求。
系统功能模块图,如图3.1所示:
图3.1功能模块图
第4章系统详细设计
4.1系统主框架布局与实现
系统主框架布局如图4.1所示:
图4.1系统主框架布局
本次开发的KTV点歌管理系统,主体框架是程序运行打开后所显示的主页,窗体最下面为点酒水、服务、喝彩、会员、调音、伴唱、重唱、暂停、切歌和静音功能;最上面是显示时间和日期,并且累计已唱歌曲数目和已点歌曲数目;中间部位显示的是歌手点歌、歌名点歌、新歌推荐、已点歌曲查询、语种点歌和金曲排名点歌,
系统主页面具有视窗、点歌方式、歌曲控制等功能,具体代码如下:
//打开窗体
privatevoidMainPage(FormmyForm)
{
myForm.TopLevel=false;
myForm.FormBorderStyle=FormBorderStyle.None;
myForm.Dock=DockStyle.Fill;
pnlFill.Controls.Add(myForm);
myForm.BringToFront();
myForm.Show();
}
//添加歌曲
privatevoidAddSong()
{
numOfMusic=0;
DataTablemyDt=newDataTable();
array=newArrayList();
myDt=myExsitSong.Search("");
foreach(DataRowdrinmyDt.Rows)
{
array.Add(dr["SONGPATH"].ToString());
numOfMusic++;
}
lblExistSong.Text=myDt.Rows.Count.ToString()+"首º¡Á";
}
4.1.1歌星点歌子模块
KTV歌星点歌模块,是根据用户选择的歌手条件,查找到所要找个的歌星名字和信息,然后点击歌手,查找到自己想要点播的歌曲。
界面设计:
歌星点歌模块主要是实现对歌手进行查找,主要分为男歌手、女歌手和组合歌手查找,并且每一模块还可以扩展为:
大陆歌手、港澳歌手、台湾歌手、欧美歌手和日韩歌手。
其代码如下:
//根据歌手性别查找歌曲
privatevoidSingerSex_Click(objectsender,EventArgse)
{
Instantiation();
Panelpnl=(Panel)sender;
mySinger.SingerSex=pnl.Tag.ToString();
OpenForm();
}
//绑定数据
privatevoidInitLoadData()
{
myDtInfo=myDt.Clone();
nStartPos=nCurrent;
if(PageCurrent==PageCount)
{
nEndPos=nMax;
}
else
{
nEndPos=PageSize*PageCurrent;
}
for(inti=nStartPos;i{
myDtInfo.ImportRow(myDt.Rows[i]);
}
txtPageCurrent.Text="第̨²"+PageCurrent.ToString();
txtPageCount.Text="/"+PageCount.ToString()+"页°3";
GetPic(myDtInfo);
}
{
currentplay++;
}
Play(currentplay);
flag=false;
}
4.1.2歌手点歌子模块
KTV歌星点歌模块,是根据用户选择的歌手条件,查找到所要找个的歌星名字和信息,然后点击歌手,查找到自己想要点播的歌曲。
其代码如下:
//根据歌手性别查找歌曲
privatevoidSingerSex_Click(objectsender,EventArgse)
{
Instantiation();
Panelpnl=(Panel)sender;
mySinger.SingerSex=pnl.Tag.ToString();
OpenForm();
}
//动态添加歌手名
privatevoidAddLable(intparamValue,DataTablemyTable)
{
LabellblName;
lblName=newLabel();
lblName.BackColor=Color.Transparent;
lblName.Text=paramValue+1+"."+myTable.Rows[paramValue][0].ToString();
lblName.Font=newFont("隶¢£¤书º¨¦",20,FontStyle.Bold);
lblName.Size=newSystem.Drawing.Size(180,36);
if(paramValue<=3)
{
lblName.Location=newPoint(paramValue*190,5);
this.pnlNameOne.Controls.Add(lblName);
}
else
{
lblName.Location=newPoint((paramValue-4)*190,5);
this.pnlNameTwo.Controls.Add(lblName);
}
4.1.3分类点歌子模块
分类点歌子模块界面主体设计:
该界面是按照大陆、港澳、台湾、欧美和日韩著名歌手查找,查找的歌手显示的界面。
分类涉及到的歌星点歌,具体代码如下:
//单击类型的事件
privatevoidSongCategory_Click(objectsender,EventArgse)
{
myDt=newDataTable();
Panelpnl=(Panel)sender;
mySongCategory.SongCategoryName=pnl.Tag.ToString();
mySong.SongCategoryID=myBUSong.GetSongCategoryID(mySongCategory);
myDt=myBUSong.GetList(mySong);
frmListmyfrmList=newfrmList(myDt);
OpenForm(myfrmList);
}
歌星点歌模块如图4.2所示:
图4.2分类点歌子模块截图
4.1.4金曲排行点歌子模块
金曲排行子模块的界面设计,界面简洁、大方,可以按照歌曲的字数来查找喜欢的曲目,从1—12个数字可以选择,单击每一个数字都可以查找相应的歌曲列表。
按照歌曲名称的字数进行点歌,如4.3图:
图4.3字数点歌模块截图
歌曲名称字数点歌子模块,点击所要找的歌曲字数,能快速的查到歌曲,具体代码如下:
//获取歌曲名称字数
privatevoidGetSongName()
{
lblCode.Text=SongID;
if(!
isNull())
{
return;
}
mySong.SongID=SongID;
myDt=newDataTable();
myDt=myBUSong.GetList(mySong);
if(myDt.Rows.Count==0)
{
lblSong.Text="暂无歌曲";
return;
}
lblSong.Text=myDt.Rows[0][0].ToString();
lblSong.Tag=myDt.Rows[0]["SONGPATH"].ToString();
}
//回退事件
privatevoidbtnBackSpacing_Click(objectsender,EventArgse)
{
if(!
isNull())
{
return;
}
SongID=SongID.Substring(0,SongID.Length-1).ToString();
GetSongName();
}
4.1.5分类点播模块构建
通过主菜单的调用,显示浏览的全部内容。
主要模块:
歌星点歌模块、歌名点歌模块、语种点歌模块、金曲排行模块、已点歌曲查询模块和新歌推荐模块。
使用客户端用户可以按照条件进行数据库内容的筛选,金曲排行模