资源描述
本 科 毕 业 论 文
基于ASP.NET在线点歌系统
Online demanded a song system based on ASP.NET
学院名称:
专业班级:
学生姓名:
指导教师姓名:
指导教师职称:
年 月
2
基于ASP.NET在线点歌系统
摘要 现代信息技术的发展,Internet日益成为企业的发展方向。本文就根据现已存在的问题,对”在线点歌”系统做了全面的分析和整体的介绍。介绍了ASP.Net+ Microsoft Access技术开发该系统的子系统的整个过程,即在线点歌系统。该系统主要利用了ASP.Net强大的网络数据库访问技术,实现B/S交互。这些模块各自发挥了不同的作用与功能,并以VB语言为实例进行了系统实现。
论文主要介绍了本课题的开发背景、系统分析、数据库设计和系统的设计与实现。
关键词 ASP.Net 音乐 网络 点歌 B/S
Online demanded a song system based on ASP.NET
Abstract Modern information technology development,Internet becomes an enterprise day by day the development direction。This paper is now under the existing problems, ” online requested a song” the system has made the comprehensive analysis and the whole introduction. Introduced ASP.Net + Microsoft Access technology development this system subsystem entire process, namely network music storehouse. This system has mainly used ASP. Net formidable network database visit technology, realizes B/S interactive. These modules have played the different role and the function respectively, and an example for the system by VB language.
The paper mainly introduced this topic development background, the system analysis, the database design and the system design and the realization.
Key words music network song on demanded b/s
I
目 录
第一章 绪论 1
1.1课题背景 1
1.1.1在线点歌系统的现状 1
1.1.2在线点歌对系统和用户对在线点歌系统的要求 2
1.2本课题的研究意义 3
1.3相关技术介绍 3
1.3.1浏览器/服务器模型 3
1.3.2 ASP.Net技术的介绍 4
1.3.3 开发平台——Visual Studio 2008 4
第二章 系统分析 6
2.1系统的可行性研究 6
2.2 系统需求分析 7
2.2.1用户需求分析 7
2.2.2系统设计目标分析 7
2.3系统功能模块介绍 7
2.4小结 9
第三章 数据库设计 10
3.1数据库的需求分析 10
3.2数据库的概念结构设计(E-R图) 10
3.3数据库逻辑结构设计 11
第四章 系统详细设计与实现 13
4.1系统工作原理介绍 13
4.2系统数据流图 14
4.3数据字典 15
4.4系统的实现算法 17
4.3.1用户信息初始化算法 17
4.3.2歌曲检索算法 17
4.3.3试听算法 18
4.3.3收藏算法 19
4.3.4验证码实现 20
4.4主模块与附模块的页面 20
4.4.1 主模块 20
4.4.2附模块: 23
结论 26
致谢 27
参考文献: 28
III
第一章 绪论
1.1课题背景
伴随着网络的出现,网页逐渐融入人们的生活。快速及时的新闻浏览,五彩缤纷的网上信息,使网络与人们的生活息息相关,于是世界上又出现了第三媒体——Internet。它打破了地域限制,真正使信息得以共享,改变了人们的工作和生活方式。制作网页是企业和个人的宣传自己的重要手段,同时也是学习者获取学习信息的重要手段。尤其是在教育领域,在素质教育与终身教育成为必然的今天,人们对信息的需求有了更新,更高的要求,而网页由于本身所具有的信息量大,传递快速,没有时空限制等特点恰好满足这种要求。所以网页也逐渐成为一种新兴的教育资源。也正是由于网络实现网站的数据信息能够进行实时交互,保证网站数据的实时性。
随着Internet的进一步发展,静态Web站点的开发与维护变得越来越困难,一方面信息的不断增加和变化,使站点维护人员不得不经常修改他们的网页,随着Internet上信息量的增多和交互性的加强使HTML显得越来越难以胜任。另一方面静态网页由于不能与浏览者进行有效交互,使人们感到越来越乏味,而不愿意再一次地进入同一站点。所以开发动态网页成了越来越多的站点所追求目标。
网络发展前景无限,及早与网络结合,与信息时代同步,与高科技汇合,定会给社会各行各业的发展注入新鲜的活力。站在网络时代的前夜,我们清晰地听到了网络时代的宣言:谁掌握了网络,谁就掌握了未来。
网络技术以及计算机的发展,网友们对网络的要求也日益长高,平常在网上听歌用一大堆下载软件下载下来也要管理同,又占空间,比如那流行歌曲,下载了听了又要删,很不方便,而在线点歌系统的实现改变了这一状况。它本身就是一个的音乐网站,用户通过它可是方便、快捷、安全地实现音乐搜索查找歌曲,并能实时试听,将自己喜爱的歌曲加入收藏。
1.1.1在线点歌系统的现状
随着计算机产业的不断发展,现在的音乐网站,以最常见的音乐发烧友为主,网站行业呈现出的旺盛生命力和巨大的市场潜力。互联网给学习者提供了丰富的超媒体资源,为网友创造出了一种由他们自行控制的娱乐环境,如果长期手动从网上找寻,就会产生一种无以适从的感觉,从而降低网友的兴趣。
如今的音乐网站还缺乏一定的简捷,在对于一些音乐网站的考查中,我发现有很多网站的画面不是很简捷,有很多的广告穿插在其中,让人看了很不舒服;还有的网站的操作不是很顺手;还有的网站不能做到真正的方便的分类的检索,也不支持相近歌曲的查询、检索功能;有的网站只能试听,而不能下载,对于一些发烧友和歌迷这无不是一种打击。
由上可看,在线点歌系统的好与坏,严重影响了网友的上网时间和对一个音乐系统的影响力,同时也影响了系统使用的效率。因此在线点歌系统是一个很有必要的娱乐系统,并且还有很大的发展空间。
1.1.2在线点歌对系统和用户对在线点歌系统的要求
在线点歌系统的目标是为用户准确地快速的定位自己的喜好,同时能快速、方便地查询新歌和自己喜爱的歌曲。所有歌曲都有一个规范的数据库后台,这就为快速查找有很大的改良作用。但随着网络的发展,人们知识水平的不断提高,在线点歌系统也需要不断的发展。
概括来说运行在线点歌系统应该支持窗口,支持音频。我们认为,在线点歌系统并不是功能越多越好,而要有了用户所需求的功能就行,这有效的保证了速度性和系统的运行性。
由于计算机技术的进步,计算机为时空自由、资源共享、系统开放、便于协作提供了支撑。但是,目前大量的网络音乐系统只是停在网络单一的水平上,并没有实现动态的个人化服务。存在主要的问题主要有:
(1)不能实时的试听;
(2)缺乏个人化服务,不能针对每个用户实现个性功能,比如收藏;
(3)缺乏音乐分享;
针对以上存在的问题,本文认为需要在以下几方面开展研究:
(1)实时收听这个功能应该在系统服务器、客户端和数据库三方面有紧密的联系,通过视图,存储过程等可以加快这三者之间的联系;
(2)针对每个用户在用户个人数据库里增加收藏,方便用户收藏自己喜爱的收藏歌曲;
(3)用户可以通过发送E-MAIL来和朋友来分享音乐。
只有达到了这些要求,在线点歌才真正达到了为用户个性化服务的作用,为用户通过在线点歌系统试听歌曲,分享音乐。
1.2本课题的研究意义
目前网络音乐大多存在着音乐资料的共享、歌曲的分类等问题,而这些问题又是限制网络音乐智能化的关键原因。本文针对这些问题提出相应的解决方案,使在线点歌系统不仅成为网友娱乐以及检索的歌曲资源,同时充分发挥其“试听”“收藏”等功能,以实现在线点歌系统真正的智能化。
具体而言,它主要涉及到以下几个方面:歌手分类;适应不同用户的个性化服务,能根据不同用户的兴趣以及当前的流行风格给出相应的功能。
本论文就是为了解决或改善这些问题,以更好地满足用户的需求,达到听歌的真正目的。其研究意义有以下几点:
(1) 设计使得根据用户不同特点提供收藏功能。
(2) 各种模块充分考虑了用户的需求,体现以用户中为心的思想和服务宗旨。
1.3相关技术介绍
1.3.1浏览器/服务器模型
WWW是构建在浏览器/服务器(Browser/Server)模型以及http协议的基础上的,其运作模式可以描述为:请求>处理>应答。
从浏览器提交的请求通过Web服务器给应用程序服务器,由它调用相关的网页应用程序进行处理,处理的结果由网页交给Web服务器,Web服务器把这个网页作为对请求的应答发还给浏览器。
至于对提交的信息如何处理,就交由网站的开发人员编写相关的网页应用程序来决定反馈到浏览器的内容;如果需要对数据库进行访问,开发人员还可以利用应用程序服务器所提供的接口对其进行访问。
网页内容的动态发布是Web应用程序的主要实现方法,通常这种方法同服务器端提供的WWW服务技术密不可分。一般来说,在Internet服务器上可以通过多种途径实现动态内容的发布,最常见的技术包括CGI、ISAPI和ASP.Net等。
1.3.2 ASP.Net技术的介绍
ASP.net 是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。ASP.net提供许多比现在的Web开发模式强大的的优势。
ASP.net是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译。ASP.net构架是可以用Microsoft(R)公司最新的产品 Visual S开发环境进行开发,WYSIWYG(What You See Is What You Get所见即为所得)的编辑。这些仅是ASP.net强大化软件支持的一小部分。[11]
因为ASP.net是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.net的Web应用中。ASP.net同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.net。[11]
ASP.net使用一种字符基础的,分级的配置系统,使你服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。这种被称为"Zero Local Administration"的哲学观念使A的基于应用的开发更加具体,和快捷。一个ASP.net的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须得文件,不需要系统的重新启动,一切就是这么简单。[11]
ASP.net已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。即使你现在的ASP.net应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP确做不到这一点。
基于Windows认证技术和每应用程序配置,你可以确信你的原程序时绝对安全的。
1.3.3 开发平台——Visual Studio 2008[14]
Visual Studio 是微软公司推出的开发环境。是目前最流行的 Windows 平台应用程序开发环境。目前已经开发到 9.0 版本,也就是 Visual Studio 2008。Visual Studio 可以用来创建 Windows 平台下的 Windows 应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和 Office 插件。
借助 Visual Studio 2008,采集和分析信息将变得更为简单便捷,业务决策也会因此变得更为有效。任何规模的组织都可以使用 Visual Studio 2008 快速创建能够利用 Windows Vista 和 2007 Office system 的更安全、更易于管理并且更可靠的应用程序。
Visual Studio 2008 在三个方面为开发人员提供了关键改进:
1.快速的应用程序开发
2.高效的团队协作
3.突破性的用户体验
Visual Studio 2008 提供了高级开发工具、调试功能、数据库功能和创新功能,帮助在各种平台上快速创建当前最先进的应用程序。
Visual Studio 2008 包括各种增强功能,例如可视化设计器(使用 .NET Framework 3.5 加速开发)、对 Web 开发工具的大量改进,以及能够加速开发和处理所有类型数据的语言增强功能。Visual Studio 2008 为开发人员提供了所有相关的工具和框架支持,帮助创建引人注目的、令人印象深刻并支持 AJAX 的 Web 应用程序。
开发人员能够利用这些丰富的客户端和服务器端框架轻松构建以客户为中心的 Web 应用程序,这些应用程序可以集成任何后端数据提供程序、在任何当前浏览器内运行并完全访问 ASP.NET 应用程序服务和 Microsoft 平台。
第二章 系统分析
2.1系统的可行性研究
在线点歌系统是服务器和用户客户机交互的一个系统,此系统在技术方面主要是采用现有的软件ASP.Net、DREAMWEAVER、Microsoft Access进行开发和研究的,这些软件早已被广大用户熟悉和了解。
这个系统能够满足用户查找的试听歌曲的要求,同时可以让用户通过发送邮件与好友分享自己的喜欢歌曲。大大满足了用户使用的个人化,这些将会吸引大量用户对本系统的兴趣与爱好。并且此系统操作简单,不会使用户不知何处下手,只要是懂得上网和识字的用户都能够对本系统操作的游刃有余。
同时我们所开发的系统,它具有以下特点:
① 实用性:为网上听歌,发送邮件分享音乐提供了方便;
② 操作简单:本系统适用于不同的使用者,包括普通用户和管理员,同时系统并不复杂和烦琐,操作简单易行。
③ 代码可读性好:文中的代码都是利用ASP.NET脚本语言进行编写,简洁易懂。
本系统有效的实现了用户使用在线点歌系统的功能,图2.1是本系统应用框架示意图。
Internet 上的用户
Internet
在线点歌系统
数据库
系统服务器
图2.1 系统应用框架图
从各方面的初步调查基础上,从建立新的网络音乐系统的必要性和可能性两个方面进行具体分析后,得出结论:开发在线点歌系统是十分必要和可行的。
2.2 系统需求分析
2.2.1用户需求分析
随着社会的进步,人们生活水平的提高,人们对精神生活的需求也越来越高,人们在网上不但可以学习,生活比如购物,等等,对一精神生活的对网络的依赖也越来越强。
大量的网络音乐网站的网络新闻网站,还有一些网络电影,网络电视,网络游戏,人们和网络的联系已经是越来越紧密,因此,有一个系统,可以方便人们对这些需求,这样的系统的出现,是发展的必然。
在线点歌系统就是在这样的现状下,能够满足人们这样的需求而计划开发的一个项目。
2.2.2系统设计目标分析
本系统主要功能如下:
● 通过用户注册可以对用户的基本情况和信息有一个初步的了解。
● 通过超级联接的在页面之间进行跳转,不至于在浏览过程中迷失方向,从而提高效率。
● 进入系统,系统通过用户级别来进入相应的界面,从而实现了分用户服务的个性化与自适应性特征。
2.3系统功能模块介绍
在系统分析的基础上,结合用户的使用状态,以及对现有网络音乐系统的观察,得出本系统的功能模块结构图,此模块共分为四层结构,各结构之间紧密相连,共同建构了在线点歌系统。具体功能模块如图2.3所示。
发E-mai
验证等级
用户个人信息
问题及答案
生日
密码
用户名
收藏歌曲
试听歌曲
搜索歌曲
下载歌曲
管理曲库资料
管理员
普通用户
登 录
普通用户注册
普通用户寻密
提交用户名
提交生日
提交题答案
是否要修改密码
图2.2系统的功能模块结构图
1.登录模块
用户登录导航模块是用户进入系统的直接入口,它指引用户的注册、登录与找回密码,模块中的各种信息是对用户进行验证的凭据。
① 登录
用户可以通过用户名称、用户密码与验证码登录,进入相应主模块。用户成为注册用户,享受更多的服务。
② 注册
用户可以点击注册进入到注册模块,注册模块用户填入相应的信息就可以注册
③ 找回密码
用户可以点击找回密码进入到找回密码模块,该模块通过提交用户名称、用户生日及用户问题的答案来找回密码,用户的在找回密码后的同时还可以修改密码。
2.主界面模块
主界面分二个,一个是普通用户,一个是管理员,通用登录验证,用户进入相应的主界面,进行操作.
(1) 普通用户
·收藏夹
系统为每个注册的普通用户提供收藏夹功能,普通用户可以从总歌曲库中选取喜欢的歌曲添加到个人收藏夹中,方便用户。并用户可以删除不想收藏的歌曲。
·发送邮件
普通用户可以通过发送邮件来和朋友分享歌曲。
·浏览娱乐信息
歌曲排行,新加入歌曲等。需要即时更新信息。
·下载歌曲
普通用户能下载系统的歌曲。
·试听歌曲
点击试听键可进行试听。
·搜索歌曲
按歌曲名,歌手名,专辑名。
(2) 管理员
权限最大者
·管理曲库资料
添加,删除,更新等操作。
2.4小结
本章主要分析系统的各个组成部分,并给出了具体的逻辑设计。系统主要描述了各模块系统的用途,设计方法以及一些相应的策略。该章主要是以全局的整体的角度描述整个系统的功能和框架,它所涉及的理论分析和设计为后面的算法设计和实现打下基础。
第三章 数据库设计
3.1数据库的需求分析
根据系统需求,可以列出以下数据项和数据结构:
l 用户信息管理:包括用户编号、登录名称、登录密码、密码提示问题、提示问题、用户名称、性别、出生日期、邮箱地址、工作单位、固定电话、移动电话、工作单位、邮政编码。
l 收藏信息:包括收藏歌曲ID,用户ID
l 歌曲信息:包括歌曲序号、歌曲名称、歌手姓名、歌词、歌曲地址、所属专辑、单击播放次数
3.2数据库的概念结构设计(E-R图)
为了把用户的数据要求清晰明确地表达出来,通常要建立一个概念性的数据模型(也称为信息模型)。概念性数据模型是一种面向问题的数据模型,是按照用户的观点来对数据和信息建模。它描述了从用户角度看到的数据,它反映了用户的现实环境,且与在软件系统中的实现方法无关。
最常用的表示概念性数据模型的方法,是实体——联系方法(Entity—Relationship Approach)。这种方法用ER图描述现实世界中的实体,而不涉及这些实体在系统中的实现方法。用这种方法表示的概念性数据模型又称为ER模型。ER模型中包含“实体”,“联系”和“属性”。主表二个,如图:
歌曲表
歌曲编号
歌曲名称
歌词
歌手姓名
地址
人气
专辑
用户
用户编号
提示问题答案
登录密码
登录名称
试听
下载
用户收藏
用户生日
密码提示问题
图3.1 一对一联系的ER图
参照完整性是保证在主键(被参照表中)和外键之间的关系总是得到维护。对两个相关联的表(主表和从表)进行操作数据的插入和删除的时候,通过参照完整性保证它们之间的数据的一致性。
用户自定义完整性,不同的数据库系统根据数据应用环境的不同,往往还需要一些特殊的约束条件。它反应某一具体应用所涉及的数据必须满足的语义要求。对于用户自定义完整性可以通过数据库设计,也可以通过程序代码来实现。由于程序设计的灵活性和便捷性,在整个系统的调试过程中对于不完善的地方只需对代码进行修改而不用更改数据库,因此在系统中采用了程序代码来实现数据库用户自定义完整性的约束。
3.3数据库逻辑结构设计
数据库表结构设计如以下各表所示:
数据库名
数据库包含的表(共三张)
Music
Music、Favour、UserSheet
Music数据表
字段名
字段含义
数据类型
主键
允许空
默认值
ID
歌曲序号
自动编号
Primary key
SongName
歌曲名称
文本
Songer
歌手姓名
文本
GeCi
歌词
备注
√
Addr
歌曲地址
文本
ZJ
所属专辑
文本
√
DJ_Counts
单击播放次数
0
Favour(存储用户收藏信息)
字段名
字段含义
数据类型
主键
允许空
默认值
FID
收藏编号
长整型
Primary key
CODE
用户名称
长整型
ID
收藏歌曲ID
长整型
UserSheet(存储用户信息)
字段名
字段含义
数据类型
主键
允许空
默认值
Code
用户编号
自动编号
LoginName
登录名称
文本
Primary key
UserPass
登录密码
文本
PassQuestion
密码提示问题
文本
PassAnswer
提示问题答案
文本
UserName
用户名称
文本
Sex
性别
文本
Birth
出生日期
日期/时间
Email
邮箱地址
文本
√
Address
工作单位
文本
√
Tel1
固定电话
文本
√
Tel2
移动电话
文本
√
Words
工作单位
文本
√
ZipCode
邮政编码
文本
√
第四章 系统详细设计与实现
4.1系统工作原理介绍
本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4.1所示:
图4.1 系统工作原理
系统的工作流程包括以下一些关键环节:
(1)用户注册。在每一个用户使用该系统之前需要注册,系统会将用户输入的信息记录到用户模型中。
(2)用户登陆。用户输入用户名、密码和验证码后,系统验证是否正确并决定用户是否能进入系统。
(3)个人收藏。根据用户个人喜好,自己来选择收藏喜欢听的歌曲。
(4)在线浏览。这是用户使用此系统的主要方式,浏览中的动作主要是点击网页中的超链接,系统会动态跟踪用户的行为更新网页内容和导航提示。
(5)搜索。为帮助用户更快更方便的找到所要的歌曲,使用户一步到位,直接找到自己所找的歌曲。
以上各个环节相互联系,前后影响。对于用户的每一项操作,系统都会自动读取数据并更新其中用户模型的数据。
4.2系统数据流图
数据流图(Data Flow Diagram,简称DFD)能精确地在逻辑上描绘系统的功能、输入、输出和数据存储等,摆脱了物理内容,是描绘系统逻辑模型的最主要的工具。
经过系统详细调查分析以及用户需求分析,我们得到了新系统的数据流图。
顶层图:
0层图:
1层图:
后台图:
前台图:
4.3数据字典
上文中的数据流图只能给出系统逻辑功能的一个总框架而缺乏详细、具体的内容。数据词典的作用是给数据流图上的每一个成分以定义和说明。除此之外,数据词典还要对系统分析中其它需要说明的问题进行定义和说明。
本文的数据词典描述的主要内容有:数据元素、数据结构、数据流、数据存储、处理逻辑和外部项。在系统分析的过程中,产生了大量的数据词典。限于篇幅,我采用仅就这几项条目各举一例来说明。
下面为音乐网站流程图中的每一部分编制数据字典。
(1)数据元素:论坛中每个注册用户都有登录名称这个信息,其描述内容如下:
数据元素名称:登录名称
类型:字符型
相关的数据结构:{用户编号+登录名称+密码+密码提示问题+提示问题答案+用户名称+电子邮箱+性别+出生日期+来自地方+工作单位+固定电话+移动电话+工作单位+邮政编码}
(2)数据流。数据流“注册信息”条目如下:
数据流名称:注册信息
说明:用户注册时提交的信息
数据流来源:注册用户
数据流去向:后台数据库
数据流组成:{用户名+密码+邮箱地址+……}
(3)数据存储:数据存储“用户信息”条目如下:
数据存储名称:用户信息
简述:存放的是每个用户相关信息情况
输入数据:注册的用户信息
数据存储组成:{用户编号+登录名称+密码+密码提示问题+提示问题答案+用户名称+电子邮箱+性别+出生日期+来自地方+工作单位+固定电话+移动电话+工作单位+邮政编码}
存储方式:按注册的先后顺序排列
(4)数据处理。数据处理“分页跳转”条目如下:
数据处理名称:分页跳转
简要描述:根据提交的跳转的页号转向该页。
输入数据流:页号
输出数据流:分页显示中的该页的所有记录。
处理逻辑:根据用户输入页号在分页显示浏览页面时跳转到该页。
(5)外部实体。外部实体“管理员”的条目如下:
外部实体名称:管理员
输入数据流:用户名和密码
输出数据流:获得相应的session变量的同时系统返回相应的管理页面的信息。
数目:1人
4.4系统的实现算法
4.3.1用户信息初始化算法
通过前面几章的分析,我们已经知道用户信息是在线点歌系统的基础。由用户模型可以了解,个人信息是用户登陆系统的入口。用户信息是在第一次使用系统注册时输入的。
该算法中牵涉的数据有:用户数据库中的用户信息管理表。算法主要功能是通过接收用户输入或选择的信息初始化用户模块中有关信息,以下便是该算法所涉及的数据结构和详细过程。
输入:用户输入的信息,如姓名,密码等。
输出:用户信息初始化。
算法的主要步骤如下:
(1)初始化,包括打开数据库usesheet、建立相关数据库的连接等;
(2)将用户表中添加一条记录;
(3)结束。
4.3.2歌曲检索算法
歌曲搜索主要是从三方面进行查找,一是根据歌曲名称,二是根据歌手姓名,三是根据专辑名称。 检索最重要的步骤就是要知道从何处抽取数据,如何判断检索条件,又是怎样在检索条件的基础上将信息显示给用户。由于在绑定歌曲信息列表的bindgrid()过程中已经对用户所输入的搜索条件进行了判断,因此在执行搜索的事件代码中只需直接调用bindgrid()过程重新绑定歌曲信息列表即可,具体算法如下:
(1) 用户选取搜索内容,如歌曲名、歌手名、专辑名,并进行提交;
(2) 从提交列表中提取数据,并进行相应判断;
(3) 将结果显示给用户;
(4) 结束;
4.2搜索流程图
4.3.3试听算法
试听是本系统的一个重要部分,当用户浏览某一歌曲时,用户可以点击试听并在当前客户软件中播放。主要步骤如下:
(1) 用户点击所要试听的歌曲;
(2) 系统查找当前歌曲的地址;
(3) 系统获得地址后开始播放;
(4) 结束。
图4.3 试听算法流程图
4.3.3收藏算法
收藏是本系统的一个重要部分,当用户浏览某一歌曲时,用户可以点击试听并在当前客户软件中播放,当用户希望把自己喜爱的歌收藏起来时可以点收藏联接。主要步骤如下:
(1) 用户点击所要试听的歌曲对应的收藏联接。
(2) 系统查找当前歌曲的ID
(3) 系统查找当前用户ID
(4) 系统在数据库收藏相应用户的一个字段下写入当前歌曲ID
(5) 结束。
图4.4 收藏算法流程图
4.3.4验证码实现
验证码的实现过程,在需要调用的页面使用image控件调用验证码生成的页面,验证码生成的页面生成验证图片且将验证信息保存至Session中,调用页面中通过Session判断用户是否输入正确。
4.4主模块与附模块的页面
4.4.1 主模块
登录窗体:主要通过直接和数据库连接及验证码,而验证用户是否合法,以及用户级而进入相应主界面,并且引导新用户进入注册窗体,如图4.5:
图4.5 用户登录界面
普通用户主界面:主界面方便用户试听、下载、发送邮件,用户还可以进入个人收藏,如图4.6:
图4.6会员主页面
收藏夹:有用户收藏过的歌曲,可以试听,删除操作,如图4.7:
图4.7收藏夹页面
发邮件:用户通过邮件发送音乐等,如图4.8:
图4.8发邮件页面
管理员主界面:用户可以添加,删除,修改歌曲,如图4.9:
图4.9歌曲管理页面
4.4.2附模块:
注册窗体:新用户可以通过登录窗体来进入注册新用户,如图4.10:
图4.10用户注册页面
忘记密码窗体:老用户可以通过该模块寻回密码并修改密码,如图4.11:
图4.11 找回密码页面
结论
经过这几个月来对系统的分析、设计,使我对网络系统有了全面的了解与认识,同时对在线点歌系统做了具体的解剖。 我认为在线点歌系统成功的关键在于以下几方面:
(1) 导航界面的清晰,简单设计。界面的清晰简单可以使用户一目了然,轻松的找到自己浏览本系统的目的所在。不需要在花费大量时间来寻找本系统的内容,浪费用户时间,甚至打消用户的积极性。
(2) 系统的易管理性。系统的管理对于系统的维护来说很重要,社会是不断进步与发展的,用户对于网上娱乐的要求也会越来越高。因此系统要随着用户的需求而不断发生变化,不断更新系统的内容来满足用户更多的需求。本系统是利用ASP.Net编程语言和ACCESS数据库编译设计的,运行环境简单,一般的浏览器都可进行浏览。
本系统的大部分模块已经实现,并且也符合以上几个特性。但是,一个完整的系统仅仅靠近三个月的分析、设计来开发是远远不够的,它需要更长的时间来测试并完善。因此,本系统仍然存在着一些需要改进和不足的问题。比如系统的整体设计需要进一步的美观,系统还不够完善还需要进一步的改善和加强,系统的内容需要更加丰富和多样化。随着研究的进行,可能还会出现其他一些问题,我会继续努力,逐步改善和不断完善本系统。
致谢
在老师和同学的帮助下,我所开发的系统得到顺利的完成与实现。
感谢我所有的同学和朋友。在学习生涯中,他们给了我许多帮助,带给我无限的快乐 。是他们陪我一起走过学生时代,和我同舟共济,共同迎接困难和挑战,他们对我的种种支持和帮助,最是感激不尽。
最后,感谢所有的老师。是他们传授给我了宝贵知识,是他们使我学会了奋斗与拼搏,同样是他们使我懂得了坚强与自信。他们在我的大学期间付出了很多的心血与精力,在我的学习道路中,他们孜孜不倦的教诲和鼓舞是促进我不断进取的重要精神动力。
参考文献:
[1] 杜亮.《亲密接触ASP.NET》.北京:清华大学出版社, 2002
[2] 陈冠军.《精通ASP.NET 2.0 典型模块与实现》. 北京:人民邮电出版社, 2007
[3] 陈冠军.《征服ASP.NET 2.0 Ajax——Web开发技术详解》. 北京:人民邮电出版社, 2007
[4] 天极网新技术研究室.《ASP.NET完全入门》. 重庆:重庆出版社,2001
[5]
[6]胡勇辉 曹倬皇 兰湘涛.《ASP.NET开发实战详解:入门、模块、系统》.北京:电子工业出版社,2006
[7] 郑人杰. 《 软件工程(中级)》.北京: 清华大学出版社,1999
[8]
[9]
[10]奚江华.《ASP.NET 2.0开发详解——使用VB》.北京:电子工业出版社,2007
[11]
[12]Charles C.Caison著 陈君等译.《ASP.NET程序员查询辞典》.北京:中国铁道出版社,2003
[13]王健南. 《ASP数据库管理项目方案精解》.北京:航空工业出版社,2006
[14]
28
展开阅读全文