版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
...wd...基于JSP的音乐网站的设计与实现2015年5月摘要随着互联网和宽带上网的普及,网络传输以其特有的快速、高效、便捷的传输方式越来越被人们承受。在当今社会的影响下,人们因为快节奏的工作和生活产生了极大的压力,这时就需要一个放松的环境去释放这些压力,因此音乐网站也就应运而生了。与此同时,音乐网站也为广阔音乐爱好者提供了一个音乐交流的平台,借此增加对音乐的了解。音乐网站系统以Struts2为框架进展开发,以JSP作为页面载体,后台数据库使用Mysql,在Windows环境下使用MyEclipse开发工具进展开发,采用Ajax和Jqury技术,使得系统更易维护。前台主要实现了用户的登陆注册、音乐的上传、试听点歌、发送短消息、音乐下载以及对音乐进展留言等功能;后台主要用于对数据库的管理,实现管理员对音乐的删除、对注册过的用户进展删除、添加友情链接等功能。关键词:音乐网站;Struts2框架;Mysql数据库MusicwebsitedesignandimplementationbasedonJSPAbstractWiththepopularityoftheInternetandbroadbandInternetaccess,networktransmissionbyitsuniquerapid,efficientandconvenienttransportmoreandmoreacceptedbypeople.Undertheinfluenceoftoday'ssociety,peopleasfast-pacedworkandlivesofgreatpressure,thenyouneedarelaxedenvironmenttoreleasethepressure,sothemusicwebsitealsocameintobeing.Atthesametime,musicwebsitealsoforthevastnumberofmusicloversprovidesaplatformforthecommunicationofmusic,toincreasetheunderstandingofmusic.MusicwebsitesystemwithStruts2asaframeworkfordevelopment,totheJSPpageasthecarrier,usingMysqlbackenddatabase,usingtheMyEclipsedevelopmenttoolsunderWindowsenvironmentfordevelopment,usingAjaxandJqurytechnology,makesthesystemeasiertomaintain.Frontachievedamajoruseroflandregistration,uploadmusic,auditionsong,sendshortmessages,musicdownloadsandmusicmessagestootherfunctions;backgroundismainlyusedtomanagethedatabase,therealizationoftheadministratorofthedeletionofthemusic,totheregisteredusertodelete,andotherfunctions.Keywords:
MusicWebsite;Struts2Framework
;TheMysqldatabase目录TOC\o"2-2"\f\h\z\u\t"标题1,2,标题3,2"1绪论11.1课题研究的目的11.2课题研究意义11.3国内外现状22系统环境概述32.1开发工具和服务器介绍32.1.1MySQL简介32.1.2MyEclipse开发平台32.1.3Tomcat服务器42.2开发技术介绍42.2.1Java编程语言简介42.2.2JSP技术52.2.3Struts2框架技术52.2.4MVC分层构造62.2.5Ajax和Jquery技术73详细设计83.1性能分析83.2功能分析83.3系统架构93.4系统登录流程103.5系统功能设计113.5.1前台功能设计113.5.2后台功能设计123.5.3系统用例分析123.6数据库设计133.6.1E-R关系图133.6.2数据表设计164系统实现194.1用户注册194.2首页194.3音乐盒244.4短消息254.5分享音乐264.6播放列表264.7后台管理275系统测试295.1系统测试的目的295.2测试用例和测试结果295.2.1测试用例295.2.2测试结果306总结32致谢33参考文献341绪论随着网络技术以及计算机的开展,人们也逐步进入到计算机网络这个范围中,人们通过Internet相互交流和沟通。因此不同的网站也应运而生了,例如音乐网站、娱乐网站、聊天网站等等,正因为在这样的一个信息化的网络时代,音乐更是随处可在。这就说明了,音乐网站要想有一个好的前景就必须用新的网络技术去支持,不断提升网络的宽带质量,更要提升音乐的试听、下载速度。1.1课题研究的目的随着计算机网络技术的开展,音乐网站系统正逐渐的渗透到各个领域,网络化和信息化的开展也促进了Web网页应用和技术的快速开展。音乐网站正是在这样的前提下而产生的,人们通过互联网给日常生活增添了很大的乐趣,让人们在工作之后可以进展休闲的娱乐。因为宽带用户的增加,带动了音乐网站产业的蓬勃兴起。无论国内还是国外,音乐网站市场都呈现一派生气,近年来,全球数字娱乐业持续开展。网络传播以其特有的快速、高效、便捷的传输方式被人们所承受,越来越多的走进了大家。并且在当今音乐浪潮的影响下,随着音乐事业逐渐走向顶峰,音乐已无处不在,音乐己与我们密不可分。全球数字娱乐业的迅猛开展、网络电视等,无不充满着剧烈的竞争。音乐网站在这种背景下逐渐开展起来。音乐网站改变了传统音乐产业的产业构造。而现在许多音乐网站不能提供在线播放,并且在技术支持上也不完善。于是设计和实现这样一个音乐网站就成为了必须,不仅仅满足用户的可以试听音乐的功能,而且还要保证在速度上不能慢,更要在功能和性能上满足用户更多的体验和需求。1.2课题研究意义随着网络通信技术、多媒体技术及数据存储技术的快速开展,音乐网站作为一种群众的Web服务,给喜爱音乐的网络用户提供了极大的便利,增添了音乐用户的选择。但有一些音乐网站由于各种不同的原因遭到了社会的淘汰,其原因主要集中在页面设计、查询浏览的速度、功能模块等不同方面。因此,为了用户可以方便、快捷、简单、安全地实现音乐搜索去查找自己喜欢的音乐,并能实时地试听音乐、下载音乐、将音乐参加到自己的音乐盒中、点歌并将自己的建议写入到留言板以便网站的完善等,需要建设一个自由、安全的音乐网站。本音乐网站应用MVC模式进展设计开发。通过对网站有关音乐媒体发布事项的一番调查与分析,在用户对音乐需求的根基上,明确音乐网站系统需要实现的具体功能并实现其功能。1.3国内外现状2005年9月2日,全球最大的零售商沃尔玛公司表示将与微软公司正式合作,开设一家新的网络音乐下载商店。从该网络音乐下载商店下载的音乐能够在微软的媒体播放器上播放。无疑,沃尔玛的参加,将会是国际音乐网站市场的又一有力的角逐者。现如今,国际音乐网站市场上已经有IPod、Microsoft、Sony、Napster.、eBay、RealNetworks等几位实力相当雄厚的集团竞争,开展势头如日中天。也是音乐网站市场的领跑者。然而,由于国际上苹果模式的冲击,以及版权问题,中国音乐网站市场陷入了开展的低谷期,歩履蹒跚。中国的音乐市场在前几年开展相对缓慢。据艾瑞咨询最新发布的《2007年中国音乐网站研究报告》研究显示,盗版和免费盛行严重影响着中国音乐网站市场的开展,2007年中国音乐网站产业与传统唱片市场和国外音乐网站市场相差甚远。同时,艾瑞分析指出,中国音乐网站潜在着巨大的市场需求,开展空间还有待市场各方充分挖掘。直至2012年,中国的音乐网站市场得到了飞速的开展,音乐用户包括下载和在线试听的已到达数亿,而国内的许多音乐网站,例如百度MP3,虾米音乐等,也是开展迅速,提供着高端高质量的音乐服务。因此,中国音乐市场将歩入成熟阶段,音乐网站潜藏的巨大空间将充分释放。中国音乐市场在与传统媒体,媒介与互联网的融合开展中,日新月异。在内容提供方面,已经形成自制、沉积、购置版权、用户上传、合作集成等多渠道来源。网络服务方面,电信和传统媒体各有所长并发挥着重要作用。对于终端产品方而言,音乐网站的收听从以前单一的媒体扩展到只要有网络连接的各种电子器件。而用户消费格局方面,除了传统的广告外,按次收费、包月收费、版权营销等也越来越得到用户的承受和用户习惯的肯定。因此中国音乐网站的开展,也正以迅猛的速度开展并与国际接轨。2系统环境概述本音乐网站系统的设计是基于Struts2框架以及MySQL数据库来实现的。本系统的开发工具主要有Myeclipse集成开发环境、MySQL数据库管理工具、Tomcat服务器处理工具等。2.1开发工具和服务器介绍对于音乐网站所涉及到的开发工具和服务器进展简要的介绍。2.1.1MySQL简介MySQL是一个精巧的SQL数据库管理系统,虽然MySQL不是开放源代码的产品,但MySQL数据库是开放源码的一种小型关联式数据库管理系统。MySQL数据库的特点是体积小、处理速度快、总体本钱低等,使得在因特网上的中小型的网站的应用非常广泛。并优于其开放源码这特点,有很多的中小型网站为了降低网站总体本钱就必定会选择Mysql数据库作为网站数据库[1][2]。对于其他大型数据库例如Oracle、SQLserver、db2等相比,MySQL数据库肯定有其缺乏的地方例如稳定性和功能。但这也丝毫不会减少它受欢送的程度,因为对于一般的个人和中小型企业来说,MySQL数据库所提供的功能是绝对可以满足的。2.1.2MyEclipse开发平台MyEclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。虽然大多数用户很乐于将MyEclipse当作JavaIDE来使用,但MyEclipse的目标不仅限于此。MyEclipse还包括插件开发环境〔Plug-inDevelopmentEnvironment,PDE〕,这个组件主要针对希望扩展MyEclipse的软件开发人员,因为它允许他们构建与MyEclipse环境无缝集成的工具。由于MyEclipse中的每样东西都是插件,对于给MyEclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。MyEclipse是一个开发源码工程,它其实是VisualAgeforJava的替代品,其界面跟先前的VisualAgeforJava差不多,但由于其开放源码,任何人都可以免费得到,并可以在此根基上开发各自的插件,因此越来越受人们关注。2.1.3Tomcat服务器Tomcat是Apache软件基金会的一个核心工程,并且是由Apach和Sun以及其他公司或个人共同开发而成的。因为有了Sun公司的参与和合作,最新的Servlet以及Jsp标准总是能够在Tomcat中表达出来。Tomcat服务器是一种免费开源的Web应用服务器,是属于轻量级的服务器,技术先进以及性能稳定,普遍使用于中小型系统和并发访问量不是很多的情况,是调试Jsp程序的法宝。Tomcat具有处理静态Html页面的功能,同时又是Servlet和Jsp的容器,可以运行Jsp页面和Servlet。Tomcat很受广阔编程爱好者的喜爱,因为在运行它的时候占用的系统资源不大,扩展性很好,支持系统开发应用常用的功能,并处于不断的完善中,程序员可以根据自己的需要去更改或在Tomcat中参加新的功能。运行程序只需要将所做的工程部署到Tomcat中,然后启动运行Tomcat,在浏览器上可以展示Jsp。一般的我们在选择浏览器的时候用的是搜狗浏览器。2.2开发技术介绍2.2.1Java编程语言简介Java是Sun公司在1995年推出的一种编程语言,被特意设计用于互联网的分布式环境。Java具有类似于C++的感觉,但相比C++而言,更易于使用。采用了以对象为导向的编程方式。使用Java编写的应用程序,既可以在一台独立的电脑上运行,也可以分布在一个网络的服务器端和客户端运行。另外,Java还可以用来编写容量很小的应用程序模块或者Applet,作为网页的一局部使用。applet可使页面使用者和页面之间进展交互式操作[3][4]。Java推出之后马上给互联网的交互式应用带来了新面貌。目前,最常用的两种互联网浏览器软件中都包括一个Java虚拟机[5]。并且几乎所有的操作系统中都增添了Java编译程序。Java语言比拟于C语言而言比拟简单,具有跨平台、安全性以及面向对象等特点。跨平台指的是Java能运行于不同的平台,引进了虚拟机原理,实现了不同平台的接口并且在虚拟机上运行。安全性指的是Java程序运行的时候,内存由操作系统直接分配而不是像C++那样通过指针来对存储器地址操作,这样以来就可以防止了病毒通过指针入侵到系统中。面向对象指的是Java语言在编程的时候一般都是将属性私有封装在类中并提供公开的访问方法[6]。这样一来实现了程序的简洁和可维护的性能。封装继承的思想使得程序只需做一次编译,然后通过上述特性反复利用,程序开发者只需要将主要的精力投在类及接口的设计和实现上。2.2.2JSP技术JSP是由SunMicrosystems公司倡导以及许多公司参与狗共同建设的一种动态网页技术标准。JSP是最早的JavaEE标准之一,也是最经典的JavaEE技术之一,直到今天,JSP依然广泛地应用于各种JavaEE应用中,充当JavaEE应用的表现层角色。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)[7]。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑[8]。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示别离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户[9][10]。插入的Java程序段可以操作数据库、重新定向网页等,以实现建设动态网页所需要的功能。JSP通过在标准的HTML页面中嵌入Java代码片段,或使用各种JSP标签包括使用用户自定义标签,从而可以动态的提供页面内容。也就是说JSP页面的内容由两局部组成:静态局部〔标准的HTML标签、静态的页面内容,这些内容与静态HTML页面一样〕和动态局部〔受Java程序控制的内容,这些内容由Java程序来动态生成[11]。JSP和Servlet是JavaEE标准的两个根本成员,它们是JavaWeb开发的重点知识,也是JavaEE开发的根基知识。JSP和Servlet的本质是一样的,因此JSP最终必须编译成Servlet才能运行,或者说JSP只是生成Servlet的“草稿〞文件[12]。2.2.3Struts2框架技术Struts是全世界最早的MVC框架,它通过采用Java
Servlet/JSP技术,实现了基于JavaEEWeb应用的MVC设计模式的应用框架,Struts也确实是JavaEE应用中使用最广泛的MVC框架[13],拥有广泛的市场支持。此外,Struts具有页面导航功能,使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各局部之间的联系,这对于后期的维护有着莫大的好处。Struts2由传统的struts1和WebWork两个经典的MVC框架开展起来的,Struts2是一个非常优秀的MVC的框架。与传统的Struts1相比,Struts2允许使用普通的、传统的Java对象作为Action;Action的execute()方法不再与ServletAPI耦合,因而更易测试;支持更多的视图技术;基于AOP思想的拦截器机制,提供了极好的可扩展性;更强大、更易用的输入校验;整合的Ajax支持等,这些都是Struts2的巨大吸引力[14]。Struts2框架工作的原理可以通过以下几个步骤来分析:首先客户端发出一个请求指向Servlet容器,这个请求经过几个过滤器后会到达Struts2框架的心脏FilterDispatcher过滤器,在处理用户请求时,会和请求一起相互配合访问Strurs2的底层框架构造[15]。在Web容器启动时,Struts2框架会自动加载配置文件里面的相关参数,并转换成相应的类。如:ConfigurationManager、ActionMapper和ObjectFactory。ConfigurationManager存有配置文件的一些根本信息,ActionMapper存有action的配置信息。在请求过程中所有的对象〔Action,Results,Interceptors,等〕都是通过ObjectFactory来创立的。过滤器会通过询问ActionMapper类来查找到请求中需要用到的Action。过滤器会把请求的处理交给ActionProxy。ActionProxy作为Action的代理对象找到需要调用的Action类并创立一个实例。然后执行所对应的Action,返回的结果一般是需要去展示的Jsp页面或者是其他的标签。2.2.4MVC分层构造概括来说,MVC思想将一个应用分成了Model、View、Control三个局部,三个局部以最少的耦合协同工作,从而大大提高了应用的可扩展性和可维护性。MVC构造具有以下特点:多个视图对应一个模型;模型返回的数据与显示逻辑别离;三层架构导致的低耦合性和易维护性[16]。那么在Struts2中,Model对应业务逻辑组件,它通常用于实现业务逻辑方法以及与底层数据库的交互等;View对应视图组件,通常是指Jsp页面,但也适用于其他视图显示技术,如Velocity或者Excel文档;Control对应系统核心控制器和业务逻辑控制器,系统核心控制器为Struts2框架提供的FilterDispatcher,它根据请求自动调用相应的Action。而业务逻辑控制器是指开发人员自行定义的一系列Action,在Action中负责调用相应的业务逻辑组件来完成处理。2.2.5Ajax和Jquery技术Ajax全称是基于XML的异步JavaScript,是与服务器交换数据并更新局部网页的技术。〔即在无需重新加载整个网页的情况下,能够更新局部网页的技术。)传统的Web应用允许用户填写表单,当提交表单的时候向服务器发送一个请求,服务器接收并处理接收的表单,然后返回一个新的网页。这种做法会浪费很多的带宽,因为前后两个页面中的大局部Html代码都是一样的。而与此不同的Ajax应用可以很好的解决这个问题,Ajax应用可以向服务器发送并取回必需的数据,它使用Soap或其他一些WebService接口,并且在客户端采用了js来处理来自服务器的响应[17][18]。由于在浏览器和服务器之间交换的数据大量减少,所以应用响应会变得更快。综上所述,可以发现Ajax应用程序具有如下优势:1.通过异步刷新,减少用户等待时间,很好的提升了用户的体验度;2.Ajax引擎在客户端运行,承当了一局部本来有服务器承当的工作,从而大大减轻服务器的负担;3.Ajax优化了服务器和浏览器之间的传输,减少了不必要的数据往返,减少了带宽占用。Jquery是一个JavaScript库,它通过封装原生的JavaScript函数得到一整套定义好的方法。具有以下功能:1.链式操作方式(对发生在同一个Jquery对象上的一组动作,可以直接连接写而无需重复获取对象。);2.许多成熟的插件可供选择;3.可靠的事件处理机制;4.实现动画效果更方便[19][20],并且为网站提供Ajax交互。Jquery已经集成了js、CSS、DOM和Ajax于一体的强大功能,可以利用很少的代码,完成更多复杂的功能。Jquery作为封装的库,其目的在于简化开发者使用js。3详细设计本网站是一个免费、开放的音乐交流平台,对于网站,都必须有固定的服务器让用户进展访问,用户的访问在本系统中会记录相关信息。音乐网站有后台管理员,管理员可以对在网站内上传的音乐进展删除操作,也可以删除注册过的用户,还可以根据一些情况来增加其他管理员对音乐网站进展管理。对于只有注册过的用户,才可以对本网站内容进展浏览,进展音乐上传、试听及收藏和留言等。注册过的用户可以修改自己的密码,可以查询自己的账户信息,上传自己的喜欢的音乐及留言别人上传的音乐,还可以将别人上传的并且自己还喜欢的音乐添加到音乐盒。在功能实现方面,注册过的用户可以根据音乐了解其隶属于哪张专辑;根据上传的音乐可以查询到该音乐的信息〔包括上传人的信息〕;根据上传时间查询最新上传的作品;可试听音乐,试听后如果喜欢也可下载音乐;并且可以对音乐进展留言。3.1性能分析音乐网站可以说是关于音乐的专场,在这里人们可以搜索其他用户上传的并且自己喜欢的音乐,也可以进展音乐的留言,这样能使其他用户更加深刻的了解其他的人对这首歌的感想。从而让人们能够在上传的音乐中找到自己喜欢的音乐,既省时又省事还省力。3.2功能分析音乐网站系统主要由两局部组成:前台管理模块和后台管理模块。注册过的用户在进入该网站后,不仅可以查看音乐、上传音乐、并将自己喜欢的音乐添加到音乐盒,还可以进展留言。管理员登录后,不仅可以查看用户状态,还可以管理音乐、用户的信息。管理员还可以根据情况添加一些管理员以维护该音乐网站的环境及安全。登录与注销每个用户必须用自己的注册的帐号登录到系统才可以访问网站。用户操作完成后退出系统,注销后可以重新登录系统。系统管理员实现管理员对音乐的删除、对注册过的用户进展删除、添加友情、修改密码链接等功能。普通用户普通用户可以浏览该网站的主页,包括试听、下载音乐,也可以进展留言;但不能查看音乐网站中的其他信息;必须要先注册之后才能登陆到系统中进展查看。登陆用户不但可以浏览该网站的信息,也可以进展留言、下载音乐;还可以通过网站给其他注册过的用户点歌,并将自己喜欢的音乐参加到音乐盒。3.3系统架构音乐网站分前台管理和后台管理两个大模块,其中前台管理又分为:首页、音乐盒、短信息、分享音乐、播放列表五大模块;后台管理又分为:后台首页、音乐管理、友情链接、用户管理、添加管理员、修改密码。根据以上功能,设计出了网站的总体架构模型,涵盖了整个网站的应用。逻辑模型如图3.1所示:图3.1逻辑模型3.4系统登录流程音乐网站的登录流程应顺着系统信息流动的过程逐步地进展,用户登陆采用常用的登陆模式。用户输入用户名和密码,后台会进展验证,正确的话就可以登陆进书籍浏览页面,错误则会提示用户名或者是密码错误。未经注册过的用户要进展注册。用户注册模块包括用户名、密码、确认密码。用户在注册的时候系统会对用户注册的信息进展验证,如简单的输入字符长度和标准可以通过js来验证,检测该用户名是否已经注册过了,则是通过后台访问数据库来验证,不允许一样的用户重复注册。管理员登陆的方式,管理员登陆进去的是后台的界面,可以对用户和音乐的信息进展查看和删除等操作,添加友情链接和管理员,还可以修改密码。系统的登录流程图,如图3.2所示:图3.2登录流程图3.5系统功能设计音乐网站系统主要由前台模块和后台管理模块两局部组成。用户在进入该网站后,不仅可以查看其各种自己喜欢的音乐,还可以选择查看关于自己喜欢的音乐的信息。管理员登录后,不仅可以查看用户状态,还可以管理音乐、用户的信息。管理员还可以根据实际情况添加其他管理员以维护该音乐网站的环境和安全。3.5.1前台功能设计音乐网站的前台功能设计,如图3.3所示:图3.3前台功能设计模块前台功能模块描述:〔1〕注册模块:普通用户可以在次注册,填写相关的信息,注册成功后可以享受本网站的所有信息资料,也可在此进展试听和下载音乐,并可以对试听过的音乐进展留言。〔2〕音乐盒模块:在这里用户可以对在网站里的一切音乐,随意试听。并将自己喜欢的音乐参加到音乐盒中。〔3〕短信息模块:此模块显示了如果其他用户给你发送短消息,你可以点此查看,并可以在此界面进展回复。〔4〕分享音乐模块:注册过的用户可以点此进入,进展上传音乐。〔5〕播放列表模块:播放过的音乐会存在此页面上。3.5.2后台功能设计根据前面的系统的系统功能分析中,可将后台功能划分成7个模块,如图3.4所示:图3.4后台功能设计模块后台功能模块描述:〔1〕登录模块:是管理员的登录界面,用于管理员的登录。〔2〕后台首页模块:显示网站名称和制作人。〔3〕音乐管理:对一些不满意的音乐可以进展删除;也可以了解音乐的情况〔包括歌名、歌手、所属专辑、简介等〕。〔4〕友情链接:添加链接的网站名称和地址。〔5〕用户管理:可以对注册过的用户进展删除。〔6〕添加管理员:此模块显示了管理员可以根据音乐网站的实际情况进展添加一些管理员,方便管理。〔7〕修改密码:可以在这个模块对管理员的密码进展修改。3.5.3系统用例分析管理员用例图设计如图3.5所示,用户用例图如图3.6所示:图3.5管理员用例图图3.6用户用例图3.6数据库设计音乐网站系统是提供应用户音乐信息,并对音乐信息进展管理的系统,数据库是该系统的核心和根基。并将系统中的信息按照特定的模型组织起来,提供系统可以方便地获取所需信息。同样,数据库设计更是整个系统应用的根基,是软件设计的起点,起着决定性的质变作用。3.6.1E-R关系图根据对数据库的功能和数据库表的设计,我们能够很容易地抽象到的实体有管理员信息实体、音乐留言信息实体、友情链接信息实体、短消息信息实体、音乐信息实体和用户信息实体。系统总体E-R图如图3.7所示。还有关于本系统一些实体的E-R图:管理员实体E-R图如图3.8所示,音乐留言实体E-R图如图3.9所示,友情链接实体E-R图如图3.10所示,短消息实体E-R图如图3.11所示,音乐信息实体E-R图如图3.12所示,用户信息实体E-R图如图3.13所示。图3.7系统总体E-R图管理员管理员用户名称密码图3.8管理员E-R图音乐留言音乐留言用户名称留言内容留言的音乐编号编号留言时间图3.9音乐留言E-R图友情链接友情链接链接名称链接地址图3.10友情链接E-R图新到消息里、短消息发送定位新到消息里、短消息发送定位标题消息内容消息时间发送消息人名称图3.11短消息E-R图歌手音乐名称音乐所属专辑简介歌手音乐名称音乐所属专辑简介上传时间网页地址音乐点击次数图3.12音乐信息E-R图用户用户用户名称密码图3.13用户信息E-R图3.6.2数据表设计根据网站的需求我们创立的数据库主要分为7个表:管理员表admin、留言表comments、友情链接表link、短信息表message、音乐列表music、最新消息通知表tip、用户表user。这七个表分别涵盖了整个网站所要用到的数据。下面分别介绍这几个表的构造:〔1〕admin〔管理员表〕,是专为管理网站后台的人员创立的表,用于存储管理员的信息,其中还设置了管理员的权限,管理员可以在网站后台修改信息。包括编号〔id〕,管理员名称〔name〕,密码〔pwd〕。其中,id〔编号〕为该表的主键。如表3.14所示:表3.14管理员表〔admin〕〔2〕comments〔留言表〕,本网站所有用户的留言都存储在此表中,方便用户查询。包括留言编号〔id〕,留言内容〔value〕,用户昵称〔name〕,留言音乐编号〔music_id〕,留言时间〔time〕。其中,id〔留言编号〕为该表的主键,如表3.15所示:表3.15留言表〔comments〕〔3〕link〔友情链接表〕,音乐网站添加的友情链接网站的信息存储在这里。包括id〔友情链接编号〕,友情链接网站名称〔value〕,友情链接网站地址〔title〕,id〔友情链接编号〕为该表的主键,如表3.16所示:表3.16友情链接表〔link〕〔4〕message〔短消息表〕,此表用来存储网络用户给其他用户点歌的短消息的,包括发送消息人的名称〔from〕,发送定位〔to〕,消息标题〔title〕,消息内容〔value〕,消息时间〔time〕,新到消息〔new〕,管理员可以通过管理此表来管理短消息。其中,id〔点歌的编号〕为该表的主键。如表3.17所示:表3.17短信息表〔message〕〔5〕music〔音乐表〕,此表是音乐的信息,尽可能的详细音乐信息,方便用户以后的查找过程。此表包括音乐编号〔id〕,音乐名称〔title〕,歌手〔singer〕,音乐所属专辑〔special〕,音乐简介〔value〕,音乐上传时间〔time〕,音乐点击次数〔clink〕,网页地址〔url〕。其中,id〔音乐编号〕为该表的主键,如表3.18所示:表3.18音乐列表〔music〕〔6〕tip〔最新消息通知表〕,用户可以根据此消息来了解是谁上传了哪一首音乐,随时了解音乐网站的上传音乐动态。包括消息通知编号〔id〕,消息内容〔value〕,。其中,消息通知编号〔id〕为改表的主键。如表3.19所示:表3.19最新信息通知表〔tip〕〔7〕user〔用户表〕,专门存储在本网站注册的用户,方便用户的下次登录。包括用户编号〔id〕,用户名称〔name〕,用户密码〔pwd〕,其中,id〔用户编号〕为该表的主键。如表3.20所示:表3.20用户表〔user〕4系统实现整个音乐网站丰富多彩,界面功能模块清晰,让用户可以更加的了解这个音乐网站的功能,也借此增加用户对此音乐网站的喜爱。4.1用户注册用户可以在本网站注册、填写相关的信息、注意格式一定要正确,否则会系统会自动提示出错,注册成功后可以享受本网站的所有信息资料,包括音乐上传、发送短消息等相关操作。如图4.1及对应代码如下所示:图4.1用户注册界面图4.2首页首页界面是富有特色的,既涵盖了整个网站的内容又显得简明、简便明了,可以让用户一眼就找到自己想要的功能模块,为其提供了方便。在网站首页用户可以登录,登录后可在首页上点相应导航,进展操作。未经注册的用户浏览网站时,如果没有任何用户上传音乐,则会看到显示内容——暂无任何音乐,快来分享给大家把!如图4.2所示:图4.2首页〔无音乐上传〕界面图未经注册的用户浏览网站时,如果有用户上传了音乐,就可以对上传的音乐进展试听、下载,也可以对上传的音乐进展留言,还可以阅读其他浏览者对这首音乐的留言,借此了解这首音乐。但不能将音乐添加到自己的音乐盒,也不能点歌,更不能上传音乐、发送短消息。必须注册成用户登录进去才可以点歌、上传音乐、发送短消息等。有音乐上传的首页,如图4.3所示:图4.3首页〔有音乐上传〕界面图首页主页面显示了五个大块:首页、音乐盒、短信息、分享音乐、播放列表。人们可以在本网站的首页进展注册用户,填写相关的信息,注意格式一定要正确,否则会系统会自动提示出错,注册成功后可以享受本音乐网站的所有信息资料,包括对音乐进展试听、下载、留言以及上传音乐,还可以将自己的喜欢的音乐点给其他用户。点歌功能如图4.4所示:图4.4点歌界面图在首页中点击阅读留言进入留言模块中,留言内容通过表单插件Jquery.form使其最近留言信息进展异步更新,也就是只有更新了最近留言显示这一块,其他不进展更新。音乐留言如图4.5所示:图4.5音乐留言界面图主要代码如下:4.3音乐盒在这里用户可以在首页里任意的查找其他用户上传的音乐并将自己喜欢的音乐参加到自己的音乐盒中。参加之后,自动保存,用户在下次登录之后可在音乐盒中看到自己原先添加到音乐盒中的音乐。等过一段时间不喜欢自己所参加到音乐盒中的音乐也可以将其删除。如图4.6所示:图4.6音乐盒界面图4.4短消息在这里你可以查看其他用户发给你的短消息,自己也可以给其他用户发送短消息。以此来增进彼此的了解,也可以让其他用户更加贴切的了解自己喜欢的音乐和事情。如图4.7和图4.8所示:图4.7发送短消息界面图图4.8查看短消息界面图4.5分享音乐在这个模块可以上传音乐,上传音乐时的类型必须为MP3类型,也必须写上音乐名称、歌手、所属专辑、简介等信息,让不了解的人们更加快的了解到这首音乐。如图4.9所示:图4.9分享音乐界面图4.6播放列表只有在音乐盒里对音乐进展过播放,才会有播放列表的存在,如果播放过此音乐,就可以点击播放上次创立的播放列表。如图4.10所示:图4.10播放列表界面图4.7后台管理管理员通过账号和密码进入后台管理系统,进展网站的相关维护。后台管理又单独设置了几个页面,为的就是使管理员的工作更加方便,使任何信息的删除,修改都集中到另一个界面上,这样的话就不会跟前台页面混淆了。如图4.11所示:图4.11管理员登录以上所有实现的功能都是通过Struts2框架来开发的,首先在web.xml文件中定义核心Filter来拦截用户请求,之后利用配置文件定义处理用户请求的Action类,在配置Action,还需要配置处理结果和物理视图资源之间的对应关系,最后编写视图资源。Jquery是一个JavaScript库,它通过封装原生的JavaScript函数得到一整套定义好的方法。Jquery有许多成熟的插件可供选择,例如:通过Ncejforms可美化表单,通过Thickbox可设置弹出效果,通过Audioplayer可支持音乐播放器等。通过使用Jquery表单插件Jquery.form来实现音乐网站系统中对于留言这一模块进展异步刷新,其中AjaxSubmit〔〕由Ajax来提交表单。大多数情况下,都是调用AjaxSubmit来对用户提交表单进展响应。5系统测试5.1系统测试的目的系统测试是为了发现错误而执行程序的过程,成功的测试是发现了至今尚未发现的错误的测试。测试的目的就是希望能以最少的人力和时间发现潜在的各种错误和缺陷。应根据开发各阶段的需求、设计等文档或程序的内部构造精心设计测试用例,并利用这些实例来运行程序,以便发现错误。信息系统测试应包括软件测试、硬件测试和网络测试。硬件测试、网络测试可以根据具体的性能指标来进展,此处所说的测试更多的是指软件测试。系统测试是保证系统质量和可靠性的关键步骤,是对系统开发过程中的系统分析系统设计和实施的最后复查。5.2测试用例和测试结果5.2.1测试用例测试编号测试目标测试步骤期望结果实际结果001测试输入已经注册过的用户是否正确。(1)进MyEclipse;(2)输入相应程序;(3)运行相应代码;(4)观察结果及相关提示信息。当输入已经注册过的用户会提示——用户名已存在。当输入已经注册过的用户会提示——用户名已存在。002测试在未登陆的情况下是否可以访问除首页外的其他的界面。(1)进MyEclipse;(2)输入相应程序;(3)运行相应代码;(4)观察结果及相关提示信息。在未登陆的情况下访问其他的界面,会出现提示——请登录后再访问。在未登陆的情况下访问其他的界面,会出现提示——请登录后再访问。003测试在登陆页面输入注册过用户名和正确的密码,是否可以登陆成功并跳转到系统主页面。(1)进MyEclipse;(2)输入相应程序;(3)运行相应代码;(4)观察结果及相关提示信息。在登陆页面输入注册过用户名和正确的密码,此时登陆成功并跳转到系统主页面。在登陆页面输入注册过用户名和正确的密码,此时登陆成功并跳转到系统主页面。004测试点击下载是否可以下载音乐。(1)进MyEclipse;(2)输入相应程序;(3)运行相应代码;(4)观察结果及相关提示信息。点击下载可以下载音乐。点击下载可以下载音乐。005测试点击注销登录是否提示——注销成功。(1)进MyEclipse;(2)输入相应程序;(3)运行相应代码;(4)观察结果及相关提示信息。点击注销登录提示——注销成功。点击注销登录提示——注销成功。5.2.2测试结果1.在注册界面中输入已经注册过的用户会提示——用户名已存在。如图5.1所示:图5.1登录界面图提示图2.在未登陆的情况下不可以访问除首页外的其他的界面,并且还会出现提示——请登录后再访问。如图5.2所示:图5.2登录界面图提示图3.在登陆页面输入注册过用户名和正确的密码,登陆成功并跳转到系统主页面,点击下载也可以下载音乐。如图5.3所示:图5.3下载界面图4.点击注销登录会否提示——注销成功。如图5.4所示:图5.4注销成功界面图6总结经过此次毕业设计,充分认识到了自己编程能力方面的缺陷,感觉到自己的根基比拟薄弱。但在这段时间里,我不断地发现自己的问题,并且找出问题产生的原因,根据相关的方法解决问题。经过努力,查阅相关资料,终于完成了音乐网站的功能实现。从开场的时候确定论文题目,总体设计需求分析,模块功能设计,到后面每一个功能模块的实现,再到整个系统开发的实现。这次毕业设计让我认识到了自己的能力,也是对自己在大学四年里学习的一次实践和总结,同时也让我更彻底地了解了开发的根本流程,相信这些经历对于以后从事的工作会有极大的影响。在本次系统设计中,我学会很多不错的技术,例如Struts2框架、Java、Jsp、Ajax、Jquery等。可以发现Ajax技术的应用能够让
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 天津空港经济区湖滨社区卫生服务中心招聘笔试真题及答案
- 广东省海洋经济发展集团有限公司管理人员招聘笔试真题及答案
- 2026年小学六年级英语第二学期期末考试卷及答案(十一)
- 2026年初一语文第二学期期末考试卷及答案(共十六套)
- 脊髓空洞症手术治疗
- 2026年餐饮管理及品牌授权合同三篇
- 幼儿居家劳动培训
- 幼儿园大班友情桥教案
- 译林版英语三年级下册Unit8 Colours第2课时Cartoon time
- (2026年)高一第一学期物理必修一期末考试试卷及答案
- TSG08-2026《特种设备使用管理规则》全面解读课件
- 2024年江苏高考地理试卷试题真题及答案详解(精校打印版)
- DL-T5796-2019水电工程边坡安全监测技术规范
- 中成药学-第17章-安神中成药
- 第十一讲风能及其利用
- 课题评审活动策划方案
- 小学一年级数学看图列算式
- 国企廉洁从业培训-《严守纪律底线、坚持廉洁从业》课件
- “以字行腔”在中国民族声乐教学中的实践与运用
- 电动葫芦检查记录表
- 2023年浙江省绍兴市上虞区百官街道凤山社区工作人员考试模拟题含答案
评论
0/150
提交评论