在线音乐网站论文_第1页
在线音乐网站论文_第2页
在线音乐网站论文_第3页
在线音乐网站论文_第4页
在线音乐网站论文_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学 士 学 位 论 文THESIS OF BACHELOR(2008 2012年)在线音乐网Online Music Net姓 名: XXXXX 学 号: 0867010455 学 院: 软件学院 专 业: 软件工程 完成时间:2012年3月10日 指导老师: XXXXX 58摘 要摘 要随着网络技术教育应用的深入发展,网络在我们的日常生活中正发挥着它重要的作用。现在,网络上传递的信息种类越来越多,从最初的文字信息发展到目前的文字、图像、声音、视频、动画等几乎所有种类的信息。因为需要传递的信息种类的增多,尤其是需要同时传递多种信息的时候,对计算机网络的数据传输技术也提出了新的要求。在不断提升网

2、络带宽的同时,网络多媒体技术也在不断地发展,包括数据的压缩编码和用于发布媒体的网络技术。在线音乐系统就是近年来出现的比较新颖的运用流媒体技术的网络多媒体形式。 本论文主要讲述了,根据网络音乐的实际情况,通过对网站有关音乐媒体发布事项的一番调查与分析,在用户对音乐需求的解析基础上,明确了在线音乐系统要实现的具体功能,并阐述系统结构设计和功能设计,从而实现一个小型音乐网站的设计与应用,主要采用Struts2.0和JSP技术。在论文里还介绍了设计的两大组成部分:一个是前台界面:经过注册的用户试听自己喜欢的歌曲甚至可以在线下载歌曲到他们的私人电脑里 ;另一个是后台界面:管理员对站内音乐信息采取必要的维

3、护措施,比如增加新的音乐信息,修改歌曲和歌手信息以及删除过时的新闻信息等。关键词:在线音乐系统;后台管理;JSP;系统结构设计;Struts2.0AbstractAbstractWith the application of network technology, education, further development of the network in our daily lives is playing an important role in it. Now, type the message on the network more and more, from the initi

4、al text message to the current text, images, sound, video, animation, etc. Almost all types of information. The kind of information because of the need to pass the increase, especially in a variety of information need to pass the time on the computer network data transfer technology has also made ne

5、w demands. Continues to improve network bandwidth, network and multimedia technology are constantly evolving, including data compression and network technology for publishing media. Online music system is relatively new in recent years the use of streaming media technology multimedia networks.Thesis

6、 focuses on, according to the actual situation of online music, music by media release on the site of some investigation and analysis of issues, the user needs analysis of music based on the clear online music system to achieve specific functions, and describes the system design and functional desig

7、n, in order to achieve a small music website design and application, mainly Struts2.0 and JSP technology.In the paper also introduced the design of two components: one is the front interface: After registered users listen their favorite songs and even download songs to their personal computer; the o

8、ther is the back-interface: Manager music information on the station to take the necessary maintenance measures, such as adding new music information, song and artist information to modify and delete outdated news and information.Key Words: online music system;backstage management;JSP;system archite

9、cture design;Struts2.0目 录目 录第1章 绪论11.1 问题的提出11.2 相关研究综述21.3 研究目标与内容51.4 研究意义及方法5第2章 在线音乐网站建模研究基础72.1 在线音乐网的理解72.1.1 在线音乐网站的概念72.1.2 在线音乐网的特点82.2 网络在线音乐网站开发的理论基础92.2.1 前台版块建设理论92.2.2 数据库建设理论92.3 网络在线音乐网站开发的原则及理论模型112.3.1 网络在线音乐网站的开发原则112.3.2 网络在线音乐网站的理论模型12第3章 开发工具及运行环境143.1 关于在线音乐网143.2 网站开发环境介绍143.

10、2.1 基础结构分析143.2.2 原理分析153.2.3 功能分析153.3 开发工具和技术的选取153.3.1 JSP 技术163.3.2 JDBC技术183.3.3 JavaScript脚本语言193.3.4 SQL Server 2005 数据库203.3.5 开发工具之Dreamweaver MX213.3.6 Struts 技术223.3.7 AJAX 技术233.4 服务器的选择233.4.1 Tomcat6.0的简介233.4.2 Tomcat6.0的新特征233.4.3 Tomcat6.0的应用环境243.5 系统所需的硬件设备243.6 系统的运行环境24第4章 系统需求分

11、析254.1 系统可行性分析254.1.1 技术可行性254.1.2 经济可行性254.1.3 操作可行性264.2 系统功能需求264.2.1 系统功能需求描述264.2.2 数据流图274.3 系统性能需求294.3.1 系统时间特性规定294.3.2 系统灵活性294.3.3 输入输出要求304.3.4 数据管理及故障处理要求30第5章 系统设计315.1 系统概要设计315.1.1 系统数据流图设计315.1.2 系统总体功能设计325.1.3 系统数据库设计335.2 系统详细设计375.2.1 代码标识设计375.2.2 代码编写原则385.2.3 系统主要功能流程及模块38第6章

12、 系统实现406.1 系统开发平台及工具406.2 系统主要模块的实现406.2.1 在线音乐前台的实现406.2.2 歌曲的下载和试听的实现426.2.3 搜索提示功能的实现436.2.4 歌曲上传功能的实现446.2.5 歌曲评论功能的实现456.2.6 歌曲类别管理的实现466.2.7 歌曲直观图的实现476.2.8 用户管理的实现49第7章 系统测试507.1 系统功能测试507.1.1 测试步骤507.1.2 测试用例507.1.3 结果分析527.2 系统性能测试527.2.1 测试环境527.2.2 测试工具527.2.3 测试结果53第8章 后续研究展望54参考文献55致 谢5

13、6第1章 绪论第1章 绪论1.1 问题的提出 目前,随着Internet在全球的推广和普及,越来越多的人开始进入这个全球范围的计算机网络,世界因此变成了一个小小的地球村,人们通过互联网彼此沟通和交流。各种各样的网站也随之产生了,比如音乐网站、新闻网站、娱乐网站、政府网站等等,它们的出现使得人们甚至可以待在家里就可以知道外面的世界正发生着什么样的变化。而在如今这样一个信息化的网络时代,音乐变得无处不在,尤其是多媒体的出现让音乐更加大众化、普及化了。现在只要你鼠标轻轻一点,就可以找到各种各样的,甚至是不同国家的音乐信息供你选择来试听和下载。这样一来,对于音乐网站的要求就更加高了,不但要求在线音乐试

14、听的速度,而且需要及时的更新音乐信息,这就意味着要不断提升网络的带宽,同时也需要新的网络技术来支持该网站,数据的压缩编码和用于发布媒体的网络技术就是在这样的背景下诞生的。而在线音乐网正是利用流媒体技术设计开发的,它的出现将使得用户收听音乐更加方便快捷。现在,网络应用软件运行的模式主要有二类:C/S模式和B/S模式。前者主要的缺点是维护、升级较麻烦,后者是近几年伴随Internet迅速发展起来的一种技术。它与客户服务器方式类似,客户端是一个标准的浏览器,服务器端是IIS,而IIS与数据库和应用服务器的紧密结合,使得这种模式的应用范围不断扩大,它已不仅仅用于网上查询、有很多部门的业务系统、企业的M

15、IS系统纷纷采用这种模式。它的主要优点是便于扩充应用、升级维护简便。基于上述考虑,用B/S模式来设计在线音乐网站比较合适。服务器端我们采用SQLServer2005数据库系统和JSP技术来构成在线音乐网的应用服务系统;服务器我们是采用Tomcat6.0,客户端采用浏览器来完成音乐试听的全过程。同时可进行远程系统维护和管理。基于网络的在线音乐网站,近年来成为国内外网络音乐研究的热点之一。网络在线音乐网站是指在计算机网络的基础上,由相互联系制约、相对独立的各模块构成,并最终实现音乐网站功能,从技术层面上讲,一般具有后台音乐管理、试听歌曲、下载歌曲、上传歌曲管理、用户注册功能等多种功能。网络在线音乐

16、网站的各项功能要得以实现,必须从硬件和软件两个方面对网站进行开发。当前,硬件条件不断发展完善,使网站的硬件配置得到了保障。因此,从软件工程的角度出发,对网络在线音乐网站进行分析设计,是网站成功开发的关键。1.2 相关研究综述近年来,国内外的专家学者从理论、方法、技术等不同的角度对网络在线音乐网站进行了一定的研究。本小节将从网络在线音乐网站的发展历程、研究现状、设计理论方法、网站的建模方法四个方面分析总结国内外的相关研究结果。1全球在线音乐发展情况全球在线音乐市场规模近年来呈不断增长趋势,增速则逐步降低。2006 年全球在线音乐市场规模约 17亿美元,其中,苹果的 iTunes和其它音乐商店销售

17、了近 8 亿首数字音乐单曲和 4300 万张专辑,产生了 12.3 亿美元的收益;350 万用户选择了如 eMusic、Rhapsody、Napster和Yahoo! Music 等订阅服务,获得了 4.7 亿美元的收益。2007 年将增长 59%,达到 27 亿美元。预计 2011 年,全球在线音乐市场规模将增长 8%至 66 亿美元。在线音乐的市场需求大,随着其本身发展模式等的不断探索、以及现存诸如版权问题的逐步解决,在线音乐市场规模将持续增长,随之而来即是传统 CD 唱片销量的持续下滑,如图1.1所示。图1.1 全球在线音乐市场规模2中国在线音乐发展现状 在线音乐在中国的虽然一直被关注着

18、,却似乎从没有走出亏损的低谷。不过,虽然一直处于低谷,但并未阻止在线音乐服务提供商对行业发展模式的探索。从A8、爱国者音乐超市的推出,到百度百代合作及新浪乐库的推出,加上腾讯QQ独特的平台与服务的结合,中国的在线音乐网站始终没有放弃对在线音乐行业的热情。有声音认为,随着3G市场的到来,未来音乐服务会以一种什么方式搭建产业链,但是如何在3G时代进行模式创新,这些不确定性决定了中国在线音乐的痛苦之路依然漫长。盗版严重影响着在中国线音乐市场的发展,2006 年,中国在线音乐市场规模仅为 1.13亿元,与传统唱片市场规模相差甚远。近年来政策监管力度加大,产业链中各个商家间合理有效的利益分配模式产生,都

19、将对中国的在线音乐市场产生积极的影响。预计,2008 年以后国内在线音乐市场将进入健康发展阶段,2008 年中国在线音乐市场规模超过 2 亿元,年增长率超过 60%,预计 2009 年将达 4.5 亿元。如图1.2所示。图1.2 中国在线音乐市场规模目前,音乐已经成为网络重要应用之一,快捷的收听方式使在线音乐的用户越来越多。2006 年内通过互联网下载或收听音乐的用户达到 1.2 亿人。预测,随着中国互联网快速发展,在线音乐产业发展不断成熟,今后几年中国在线音乐用户数将持续增长,预计 2007 年中国在线音乐用户数量将达到 1.45 亿人,2009 年将突破 2亿人。如图1.3所示。图1.3

20、中国在线音乐用户规模 3网络在线音乐市场发展趋势 网络首发成为原创音乐发布的重要途径。2000年的2月5日零点,中国第一首网络首发歌曲以MP3格式出现在“人民时空”的音乐平台发布,拉开音乐作品网络首发的序幕。经过10多年的发展,如今的互联网和移动互联网已经成为唱片公司和歌手新歌、MV发布推广的主要选择,网络首发也成为网络音乐服务提供商吸引用户、聚集用户的一个重要手段。 网上商店成为无线音乐下载最新亮点。国际知名的苹果公司开辟了在线应用商店模式,谷歌、黑莓、三星等厂商也纷纷效仿,诺基亚、摩托罗拉、联想等移动终端商都重金投入,力图开拓出自己的一片天地。中国移动、中国电信、中国联通这样的通信运营商,

21、也开始了自己在线软件商店的建设。 社区网站为音乐传播模式带来变革。以开心网、校内网等为代表的社交类网站迅速发展,其内嵌的网络音乐播放插件和用户分享、口碑传播的模式促进了网络音乐传播方式的变革,让小型唱片公司和非主流创作者可以更容易地传播他们的作品。社区网站的粘性和互动性将为网络音乐传播带来巨大的变革。 网络音乐将由简单统一向个性化发展。网络音乐的服务形式已从单纯的音乐内容提供,发展到现在音乐分享交流阶段。更多用户不满足于被动的收听音乐,而是热衷于分享。网络音乐未来将发展到音乐精准推荐的阶段,用户需要网络音乐内容提供商能实现智能化推荐音乐。这对网络音乐内容服务商和运营商提出了较高的要求,需要对用

22、户行为进行精确的识别,并且智能化为用户提供分类服务。 音乐云将成为服务热点,前景尚不明朗。A8 音乐于2010年年初提出了“音乐云”服务的概念,拉开了中国网络“音乐云”序幕,其他厂商纷纷跟进。所谓“音乐云”,简单的讲就是用户通过音乐软件,可以将存储在云端的音乐内容在手机、PC和电视等多种设备上进行播放、分享,无需用户再费时费力从电脑存储器中拷贝到其他终端设备。这一崭新模式能否在中国网络音乐市场形成一定程度的洗牌,目前看来前景尚不明朗。1.3 研究目标与内容1研究目标(1)从模型抽象方法、建模过程、模型表示等几个角度构建在线音乐网站的建模方法。(2)建立规范、科学的网络在线音乐网站建模过程、步骤

23、。(3)应用UML统一建模语言对网络在线音乐网站的结构、过程、功能等要素进行可视化的描述,为各个阶段建立可视化模型。2研究主要内容(1)网络在线音乐网站建模的理论及技术基础。(2)网络在线音乐网站建模的方法、过程与具体步骤。(3)网络在线音乐网站的可视化建模。研究如何应用UML从不同的角度对网络在线音乐网站进行图形化表示。(4)应用研究。具体开发在线音乐网站,验证网络在线音乐网站模型的有效性。1.4 研究意义及方法1研究意义(1)应用软件工程领域的设计理论、方法,分析网络在线音乐网站的开发过程,为面向对象方法在音乐网领域的应用做出研究性的实践。(2)从模型抽象方法、建模过程、模型表示等几个角度

24、出发,构建了科学、有效的网络在线音乐网站建模方法。(3)应用UML统一建模语言对网络在线音乐网站的结构、过程、功能等要素进行可视化的描述,为网络在线音乐网站设计的可视化提供方法、技术上的支持。(4)应用面向对象方法抽象网络在线音乐网站,建立网络在线音乐网站的各种模型框架,为网站设计与开发人员提供大量可共享、重用的软件参考模型。2研究方法(1)文献分析方法。搜集大量有关在线音乐网站设计理论与方法、建模方面的资料,通过对资料的整理分析,归纳网络在线音乐网站的研究基础。(2)面向对象方法。对象就是对客观实体的抽象,面向对象方法的基本思想是尽可能的运用人类的自然思维方式来构造网站。论文中主要涉及到与建

25、模密切相关的面向对象分析和设计方法。(3)案例分析方法。选择具体的音乐网站为研究对象,分析研究网站功能及实现过程,为网站的理论模型和建模提供参照。第2章 在线音乐网站建模研究基础第2章 在线音乐网站建模研究基础网络在线音乐网站是在线音乐发展日益社会化、分布化与系统资源统一共享、重用与协作的统一。本章首先讨论网络在线音乐网站的基本概念、特点、规范及标准;然后论述网络在线音乐网站设计的理论基础,并在此基础上提出网络在线音乐网站的开发原则及理论模型;最后,对网络在线音乐网站建模过程进行概要分析。2.1 在线音乐网的理解2.1.1 在线音乐网站的概念1数字音乐定义的概念数字音乐是指在音乐的制作与传播及

26、储存过程中使用数字化技术的音乐。数字音乐通用的格式为 MP3 或 WMA。 数字音乐按照播放终端的不同,分为在线音乐(以 PC为终端)和移动音乐(以手机为终端),如图2.1所示数字音乐分类。图2.1 数字音乐分类2在线音乐的概念在线音乐是指通过互联网在线视听、或可直接下载到电脑中及传输到其它播放设备中视听的数字音乐。2.1.2 在线音乐网的特点网络在线音乐网具有以下特征:1. 广泛性 无论你属于哪个国家,哪个民族,无论你的外貌如何,无论你的身份地位,都可以参与到网络音乐活动中,条件是最基本的硬件设施、上网技术,除此之外没有任何限制,这样就大大降低了网络音乐传播的门槛,使更多的音乐作品、人才拥有

27、得以展现的一个机会。可是这也造成了低价值音乐的泛滥。2. 公平性 在网络世界里,每个人都是平等的,每个人都可以充分自由地展示自己的个性。人们对事物的认识也将是更加客观的、更加真实的,解决了现实生活中竞争“平台不平”的问题,给更多的人以公平的竞争机会。这是非常难能可贵的。3. 互动性 在网络音乐出现之前,我们除了自己购买磁带、CD等欣赏方式外,还可以通过电台、电视台欣赏到我们喜欢的音乐,可是电台或电视音乐不可以随自己的喜好去选择,而网络音乐带给人们的就是优越的自主选择,网民可以在网上任意选择自己喜爱的音乐,并在最短的时间内对其作出回应,同时网民也可以将自己创作的音乐或是演唱的歌曲放到网上,凭借网

28、络的平台将自己的音乐推广出去,争取大家的认可。4. 成本低廉 创作者只要制作完了音乐,就可以进行网络传播,也就是发行,另外在传播、宣传的过程中也不用租用媒介的费用及发布广告的费用,与传统的音乐传播方式相比减少了很多中间环节,成本达到最小化。但是网络音乐使音乐越来越便宜,不用说正版的唱片市场遭到了沉重的打击,甚至使廉价的盗版CD销售也受到冲击,大家都去网上免费下载,速度快自主性强,也就没人去花钱大价钱买正版CD了,使得唱片公司等的利益受到威胁,版权也遭到侵犯。这也是网络传媒人和唱片销售商亟待解决的一个问题。5. 网络音乐带来了音乐理念的革新 不难看出那些有市场的网络音乐,都是富有时代气息的歌曲,

29、这些歌曲简单易唱、琅琅上口,歌词更加口语化。但是现在网上的娱乐趣味普遍低俗,文化含量太低。许多网络歌曲都是音乐垃圾,质量高的精品的极其缺乏。 综上所述,网络确实为音乐传播提供了别样的方式,但目前我国的网络音乐还处在杂乱无序的初级阶段,亟待走向成熟。2.2 网络在线音乐网站开发的理论基础2.2.1 前台版块建设理论一个好的界面的设计应该要从多方面考虑,我的论文主要从界面弱化和模块化和可修改性强。1界面弱化一个好的界面设计它的界面时弱化的,它突出的是功能,着重体现的是网站业提供给使用者是主要什么。这就涉及到浏览顺序、功能分区等等。要让访客在0.5内就能把握网站的行业性质,1秒内就知道该从哪个地方开

30、始使用这个网站,能点一此的,绝不点第二次。当然上面说的是大多数功能性网站,对于宣战展示性网站,诸如加特效的或Flash网站,可能就不得不花哨一些,但不能太过分。网站不是动画片,在效率越来越高,社会心理越来越浮躁的中国,人们的耐心越来越小,心理承受能力越来越低。效果可以体现意境,点到为止。2模块化和可修改性强模块化不仅可以提高重用性,也能统一网站风格,还可以降低程序开发的强度。这里就设计一些尺寸、模数、宽容度、命名规范等等知识了,不再冗述。无论是架构还是模块或图片,都要考虑可修改性强。举个简单的例子,logo、按钮等,很多人喜欢制作图片,N个按钮就是N张图片。如果只做3-5类按钮的背景图片,然后

31、用在网页代码里打上文字,那么修改起来就简单了,让程序员自己改字就可以了。然而网页显示的字体是带有锯齿的,一般即能清晰又保证美观的字体字号有几类:宋体 12px | 宋体 12px 粗体 | 宋体 14px | 宋体 14px 粗体 | 黑体 20px | verdana 9px | Arial Black 12px+ |。2.2.2 数据库建设理论数据库是一个单位或是一个应用领域的通用数据处理系统,他存储的是属于企业和事业部门、团体和个人的有关数据的集合。数据库中的数据是从全局观点出发建立的,他按一定的数据模型进行组织、描述和存储。其结构基于数据间的自然联系,从而可提供一切必要的存取路径,且数

32、据不再针对某一应用,而是面向全组织,具有整体的结构化特征。 常用的设计方法有手工试凑法和规范设计法。1手工试凑法手工试凑法也叫直观设计法,它是最早使用的数据库设计方法。这种方法依赖于设计者的经验和技巧,缺乏科学理论和工程原则的支持,设计的质量很难保证,常常是数据库运行一段时间后又发现各种问题,这样再重新进行修改,增加了系统维护的代价。因此这种方法越来越不适应信息管理发展的需要。2规范设计法为了改变手工试凑法带来的问题,1978年10月,来自三十多个国家的数据库专家在美国新奥尔良(New Orleans)市专门讨论了数据库设计问题,他们运用软件工程的思想和方法,提出了数据库设计的规范,这就是著名

33、的新奥尔良法,它是目前公认的比较完整和权威的一种规范设计法。新奥尔良法将数据库设计分成需求分析(分析用户需求)、概念设计(信息分析和定义)、逻辑设计(设计实现)和物理设计(物理数据库设计)。目前,常用的规范设计方法大多起源于新奥尔良法,并在设计的每一阶段采用一些辅助方法来具体实现。规范设计法从本质上来说仍然是手工设计方法,其基本思想是过程迭代和逐步求精。下面简单介绍几种常用的规范设计方法。(1)基于E-R模型的数据库设计方法 基于E-R模型的数据库设计方法是由P.P.S.chen于1976年提出的数据库设计方法,其基本思想是在需求分析的基础上,用E-R(实体联系)图构造一个反映现实世界实体之间

34、联系的企业模式,然后再将此企业模式转换成基于某一特定的DBMS的概念模式。(2)基于3NF的数据库设计方法基于3NF的数据库设计方法是由S·Atre提出的结构化设计方法,其基本思想是在需求分析的基础上,确定数据库模式中的全部属性和属性间的依赖关系,将它们组织在一个单一的关系模式中,然后再分析模式中不符合3NF的约束条件,将其进行投影分解,规范成若干个3NF关系模式的集合。(3)基于视图的数据库设计方法此方法先从分析各个应用的数据着手,其基本思想是为每个应用建立自己的视图,然后再把这些视图汇总起来合并成整个数据库的概念模式。2.3 网络在线音乐网站开发的原则及理论模型2.3.1 网络在

35、线音乐网站的开发原则网络在线音乐网站的设计是一项复杂的任务,设计时必须综合考虑各种因素,遵循一定的设计原则,具体设计原则主要有以下几个方面:1一致性原则一致性原则包括个方面的内容:第一,网页的内容与形式要一致。一个网页如果只有华丽的外表,而没有充实的内容,这样让人看了一遍之后,就只知道网页的页面还行。那么你制作网站的主要目的是什么呢?难道只是为了让别人看你的设计水平,而不是你网站的内容吗?没有充实的内容,读者看到你的网页会大失所望,就没有下一次再访问你的网站的欲望了,这样的网站其实是一个失败的网站。第二,网站的总的风格要一致。一个网站如果是由几种风格制作出来的,这样的网站让人感觉杂乱无章,让人

36、觉得整个网站部分能接受,而另外一部分不能接受。第三,网站的图片、背景要与网站的内容一致。一个好的图片、背景更能衬托出设计者所要表达的意图。2重点突出原则如果你所设计的网站没有什么突出的重点,面面俱到,那么你的网站就不会给游客留下太多的印象,反而给人零乱的感觉。音乐网的网页要向读者展示的东西很多,包括音乐库总体介绍、歌曲分类、歌曲查询、歌手查询、专辑查询、数据库资源等。如何将这些项目归类,如何将这些项目有效地组织起来,是设计网页时必须考虑的问题。3最新原则网页的内容不能是一成不变的,要经常更新,保持网站内容新鲜,定期检查链接,不能有“空”链接。要吸引游客,就必须把网页做得新颖,让人有耳目一新的感

37、觉,但是必须注意,网站的风格一经形成,就不要随意改变,而改变的只能是网页的一些信息,如歌曲新闻、数据库资源和网上信息数据更新的情况。4独特性原则每一个网站都应有自己独特的风格,不能千篇一律,一个模式。要做到这一点,设计者就必须要有独创性,用艺术的感染力设计出符合自己音乐网形象的网页来。用什么作为基调、选用的字体、图形都要与内容有关,形成一个有机的整体。2.3.2 网络在线音乐网站的理论模型根据网络在线音乐网站的定义、理论基础及设计原则,可以得出网络在线音乐网站应具有的主要功能,将其以功能模块的形式表示,得出网站的理论模型,前台功能结构如图2.1所示。图2.1 前台功能结构后台功能结构如图2.2

38、所示。图2.2 后台功能结构(1)从功能角度看,网络在线音乐网站主要分为用户管理模块、歌曲管理模块、评论管理模块、歌曲类别管理模块和歌曲搜索模块五大部分。用户管理模块是游客在注册页面填写好自己的信息提交成功后,成为网站的一个用户,可以为音乐网站添加歌曲、试听、下载等功能,管理员也可以对用户进行添加和删除,歌曲管理模块是管理员和用户都可以添加歌曲数据库里没有的歌曲,但管理员还可以对歌曲的删除和修改等功能,评论管理模块是游客和用户在试听和下载后,可以对该歌曲进行评论,管理员可以对评论进行管理,歌曲类别管理模块是对不同种类的歌曲进行分类,让游客和用户浏览歌曲和查找歌曲更加方便,管理员也更好进行管理,

39、歌曲搜索模块是游客和用户可以按照歌曲的名字和歌手的名字和专辑的名字来进行查找自己想要的歌曲。(2)从用户角度看,网络在线音乐网站主要分为游客类、用户类、管理员类三大类别。第3章 开发工具及运行环境第3章 开发工具及运行环境3.1 关于在线音乐网在线音乐网的设计正是依靠计算机和网络的强有力的结合,开发前对本网站进行了详细的需求分析,根据在线音乐网的实际情况,设计了多个歌曲分类功能模块,以满足用户试听的各种要求。从程序设计和页面美工同时入手开发,后文除了对整个网站进行了分析,对开发过程中涉及到的问题和解决方案做了详细规范的说明外,还对网站设计中关键的、新颖的部分做了重点介绍说明,其中包括如何实现用

40、户的管理、歌曲及相关信息的管理、歌曲的试听以及数据库的设计发放等都有详细的介绍。这些功能的实现在提高整个系统的可移植性、简便性和效率方面都起到了关键的作用。3.2 网站开发环境介绍3.2.1 基础结构分析网络应用结构模型采用的是B/S模式:B/S模式是把WEB技术和数据库技术结合起来的新技术,实现开发环境和应用环境的分离,用户端用相对统一的浏览器代替客户软件,实现跨平台的应用和多媒体服务。基于B/S模式的信息系统通常采用三层结构:“浏览器WEB服务器-数据库服务器”。如图3.1可以发现这三层体系结构的组成:图3.1 B/S模式图(1)用户界面部分-浏览器;(2)应用界面部分-WEB服务器(中间

41、件);(3)信息及数据存储部分-数据库。3.2.2 原理分析用户通过浏览器向WEB器发送请求,如果请求的是一个HTML(HyperText Markup Language,超文本标记语言)文档,则WEB服务器在本地文件系统中找到文件,并回传给浏览器。如果请求的是对数据库的操作,则由WEB服务器启动相应的中间程序,由中间件程序与数据库交互,并使用获得的数据,生成HTML页面,回传给浏览器,完成一次用户请求。3.2.3 功能分析1、数据库一般的数据库管理系统DBMS是关系数据库管理系统,其次是对象-关系数据库管理系统。关系数据库管理系统的数据结构较为简单,数据本身以二维表形式进行存储,表之间的数据

42、的联系通过表中键的连接来表示,系统采用结构化查询语言SQL。2、浏览器WEB上,用户界面是用HTML编写的页面,用户请求并浏览HTML页面的工具是浏览器。浏览器是一种软件,当用户提出请求后,它主要完成两件工作:一是使用HTTP (HyPerText Transfer Protocol,超文本传输协议)协议向WEB器发送请求,下载用户请求的页面;二是解释页面中的HTML标记并按照标记规定的格式显示页面。3、WEB 服务器在WEB没有和数据库连接之前,用户在浏览器中看到的是从服务器上下载的静态页面,这种静态页面中包含了一些信息,但无法及时反映数据的动态变化,且用户无法通过浏览器操作数据库中的数据。

43、为了向用户提供内容丰富的信息服务,必须将WEB与数据库连接起来,使浏览器通过WEB服务器激活中间件程序,完成对数据库的操作,这时WEB服务器起着中介者的作用。3.3 开发工具和技术的选取3.3.1 JSP 技术1、JSP 基础介绍JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp) 。用JSP开发的Web应用是跨平台的,即能在Lin

44、ux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,

45、通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。 JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点2、JSP 工作原理在一个JSP文件第一次被请求时,JSP引擎把该JSP文件转换成为一个servlet。而这个引擎本身也是一个servlet

46、,在JSWDK或 WEBLOGIC中,它就是JspServlet。 JSP引擎先把该JSP文件转换成一个Java源文件,在转换时如果发现JSP文件有任何语法错误,转换过程将中断,并向服务端和客户端输出出错信息;如果转换成功, JSP引擎用javac把该Java源文件编译成相应的class文件。然后创建一个该SERVLET的实例,该SERVLET的jspInit()方法被执行,jspInit()方法在servlet的生命周期中只被执行一次。然后jspService()方法被调用来处理客户端的请求。对每一个请求,JSP引擎创建一个新的线程来处理该请求。如果有多个客户端同时请求该JSP文件,则JSP

47、引擎会创建多个线程。每个客户端请求对应一个线程。以多线程方式执行可大大降低对系统的资源需求,提高系统的并发量及响应时间.但应该注意多线程的编程限制,由于该servlet始终驻于内存,所以响应是非常快的。如果.JSP文件被修改了,服务器将根据设置决定是否对该文件重新编译,如果需要重新编译,则将编译结果取代内存中的servlet,并继续上述处理过程。虽然JSP效率很高,但在第一次调用时由于需要转换和编译而有一些轻微的延迟。此外,如果在任何时候如果由于系统资源不足的原因,JSP引擎将以某种不确定的方式将servlet从内存中移去。当这种情况发生时 jspDestroy()方法首先被调用, 然后ser

48、vlet实例便被标记加入"垃圾收集"处理。 jspInit()及jspDestory()格式如下:可在jspInit()中进行一些初始化工作,如建立与数据库的连接,或建立网络连接,从配置文件中取一些参数等,在jspDestory()中释放相应的资源。如图3.2所示。图3.2 JSP的处理过程图3、JSP的对象request对象表示HttpServletRequest对象。它包含了有关浏览器请求的信息,并且提供了几个用于获取cookie, header, 和session数据的有用的方法。response表示HttpServletResponse对象,并提供了几个用于设置送回

49、 浏览器的响应的方法(如cookies,头信息等)。out对象是javax.jsp.JspWriter的一个实例,并提供了几个方法使你能用于向浏览器回送输出结果。pageContext表示一个javax.servlet.jsp.PageContext对象。它是用于方便存取各种范围的名字空间、servlet相关的对象的API,并且包装了通用的servlet相关功能的方法。session表示一个请求的javax.servlet.http.HttpSession对象。Session可以存贮用户的状态信息。applicaton 表示一个javax.servle.ServletContext对象。这有助

50、于查找有关servlet引擎和servlet环境的信息。config表示一个javax.servlet.ServletConfig对象。该对象用于存取servlet实例的初始化参数。page表示从该页面产生的一个servlet实例。exception对象表示用来处理JSP文件执行时发生的所有错误和异常。3.3.2 JDBC技术1、JDBC 基础介绍JDBC(Java Data Base Connectivity)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构

51、建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序。Java 具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是 Java应用程序与各种不同数据库之间进行对话的方法。而 JDBC 正是作为此种用途的机制。 JDBC 扩展了 Java 的功能。例如,用 Java 和 JDBC API 可以发布含有 applet 的网页,而该 applet 使用的信息可能来自远程数据库。企业也可以用 JDBC 通过 Intranet 将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有 Windows、 Maci

52、ntosh 和UNIX 等各种不同的操作系统)。随着越来越多的程序员开始使用Java 编程语言,对从 Java 中便捷地访问数据库的要求也在日益增加。2、JDBC与数据库的交互技术当用户需要浏览器同服务器交互的时候,有时少不了数据库。因为只有数据库才可能大量、快速地处理信息。使用JDBC不仅意味着用户可以读取MYSQL和SQL SERVER等数据库,同时也意味着用户可以读取其他ODBC(OPEN DATABASE CONNECT,开放式数据库互联)兼容的数据库。JDBC是一种用于执行SQL语句的JavaAPI,可为多种关系型数据库提供统一的访问接口,它由一组用Java编写的类和接口组成.Jav

53、a通过JDBC与数据库进行连接,一个JDBC程序涉及与数据库建立连接,发送SQL语句,处理查询结果等。具体操作步骤可以归纳为如下:(1)加载JDBC驱动程序;(2)提供JDBC连接的URL;(3)创建数据库的连接和对象;(4)操作数据库;(5)关闭数据库对象和连接。3、JDBC、数据库和JSPJSP通过JDBC访问数据库时的流程;当JSP被调用时,它通过jdbc API 来访问数据库并执行查询和更新,JDBC是采用SQL语言与底层的数据库交互的。如果一条 SQL语句会从数据库中产生一组结果记录,它们就会被JDBC打包成一个Result对象,JsP处理这些记录并动态地生成HTML页面,最后浏览器

54、将得到的页面显示给用户。简而言之,必须知道5个JDBC的类或接口:数据库的JDBC驱动器类,DriverManager类、Connection接口、Statement接口、Result接口。它们用如下方式和数据库建立连接和操作数据库: (1)JSP代码通过带参数调用Class.forName(),为DriverManager类实例化、加载驱动器。 (2)在JSP中用DriverManagere.getConnection()取得一个Connection对象。 (3)用Connection.createStatement()创建一个Statement对象。 (4)用JSP代码通过Statemen

55、t.executeQuery()或Statement.executeUpdate()查询或更新数据库。 (5)如果执行了一个查询JSP代码会处理Statement.executeQuery()返回Result对象。(6)关闭JDBC对象操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声明顺序相反。3.3.3 JavaScript脚本语言JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。它最初由网景公司的Brendan Eich设计,

56、是一种动态、弱类型、基于原型的语言,内置支持类。JavaScript是Sun公司的注册商标。Ecma国际以JavaScript为基础制定了ECMAScript标准。JavaScript也可以用于其他场合,如服务器端编程。完整的JavaScript实现包含三个部分:ECMAScript,文档对象模型,字节顺序记号。基本特点:能够具有交互性,能够包含更多活跃的元素,就有必要在网页中嵌入其它的技术。如:Javascript、VBScript、Document Object Model(DOM,文档对象模型)、Layers和Cascading Style Sheets(CSS,层叠样式表),这里主要讲Javascript。那么Javascript是什么东东?Javascript就是适应动态网页制作的需要而诞生的一种新的编程语言,如今越来越广泛地使用于Internet网页制作上。Javascript是由 Netscape公司开发的一种脚本语言(scripting language),或者称为描述语言。在HTML基础上,使用Javascript可以开发交互式Web网页。Javascript的出现使得网页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。运行用Javascri

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论