在线音乐管理系统毕业论文.docx
- 文档编号:10425347
- 上传时间:2023-02-11
- 格式:DOCX
- 页数:50
- 大小:213.19KB
在线音乐管理系统毕业论文.docx
《在线音乐管理系统毕业论文.docx》由会员分享,可在线阅读,更多相关《在线音乐管理系统毕业论文.docx(50页珍藏版)》请在冰豆网上搜索。
在线音乐管理系统毕业论文
在线音乐管理系统毕业论文
1引言1
1.1研究背景1
1.2国研究现状1
1.3研究容与本人所做的工作2
1.3.1研究容2
1.3.2本人所做的工作2
1.4论文结构2
1.5开发环境的介绍2
1.5.1开发工具之JSP3
1.5.2开发工具之MyEclipse9.06
1.5.3开发工具之MySQL数据库7
1.5.4开发工具之Dreamwear8.011
1.5.5开发工具之Tomcat12
1.5.6开发工具之B/S14
1.5.7开发工具之JavaBean16
2系统分析18
2.1系统功能概述18
2.1.1系统前台功能概述18
2.1.2系统后台功能概述18
2.2可行性研究18
2.2.1经济可行性19
2.2.2技术可行性19
2.2.3法律可行性19
2.3需求分析19
2.3.1系统主要需求描述20
2.3.2数据流图21
2.3.3数据字典22
3概要设计26
3.1系统总体结构图26
3.2数据库概念设计26
4详细设计29
4.1数据库物理设计29
4.2系统主要模块的设计29
4.2.1会员模块设计29
4.2.2管理员模块设计29
5系统的实现31
5.1系统母版页的实现31
5.1.1系统首页实现31
5.1.2上传歌曲页面的实现32
5.1.3管理我的歌曲页面的实现32
5.1.4下载歌曲页面的实现33
5.1.5短消息与留言板的实现33
6系统的调试与测试35
6.1程序调试35
6.2程序的测试35
6.2.1测试的重要性及目的35
6.2.2测试的步骤36
6.2.3测试的主要容37
6.2.4测试中的误区38
结束语40
致谢41
参考文献42
1引言
1.1研究背景
目前,随着Internet在全球的推广和普及,越来越多的人开始进入这个全球围的计算机网络,世界因此变成了一个小小的地球村,人们通过互联网彼此沟通和交流。
面对信息化逐步成为社会标志的现实状况,必然决定了计算机网络的应用以及使用将会更加的频繁,信息化给人们带来的好处是不言而喻的,就计算机网络而言,在军队、政府以及企业的应用所带来的好处更是数不胜数,而在如今这样一个信息化的网络时代,音乐变得无处不在,尤其是多媒体的出现让音乐更加大众化、普及化了。
现在只要你鼠标轻轻一点,就可以找到各种各样的,甚至是不同国家的音乐信息供你选择来试听和下载,也决定了网上娱乐会有很大的市场潜力和升值空间,因此,根据实际情况打造一个在线音乐点播系统具有很实际的市场意义。
课题目标是设计并实现一个B/S体系结构的Integer音乐。
结合实践,理解网页开发技术和数据库的基本知识,学习相关开发工具和应用软件,熟悉建设的过程,熟练掌握网络数据库编程方法。
1.2国研究现状
现在我国的信息管理水平还比较落后,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代传统的管理方法必然被计算机为基础的信息管理所取代。
软件作为一项有力的工具,只能当此种工具,与我们的实践相结合起来的时候,才具有重大的社会价值及使用价值。
因此根据目前实际的情况开发这样一套管理系统是十分必要的。
随着科学技术的不断提高,计算机科学技术日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机进行管理,具有着手工管理所无法比拟的优点。
例如:
可靠性高、存储量大、性好、寿命长、成本低等。
这些优点能够极大地提高工作的效率,也是信息正规化管理与世界接轨的重要条件。
本系统用JSP语言来编写社本系统,数据库用MYSQL来连接系统。
本论文主要涉及软件,数据库与网络技术等。
涵盖知识面广,可有效地提高学生综合运用所学知识分析解决问题的能力,增强学生对事物的理解与掌握能力,培养学生掌握科学的研究方法,正确的设计思想,独立思考,勇于进取,探索创新,为今后进一步学习与工作奠定了良好的基础。
1.3研究容与本人所做的工作
1.3.1研究容
设计并开发一个在线音乐管理系统,该系统的功能如下:
(1)点播歌曲。
用户不用注册会员也可点播本系统中的歌曲。
(2)注册会员。
用户需要注册会员后才能享受本系统的其他功能。
(3)下载歌曲。
注册会员之后即为本系统会员,可下载自己所喜欢的歌曲到本地电脑中。
(4)上传歌曲。
本系统会员,可将自己喜欢,但系统所没有的的歌曲上传到本系统。
(5)管理我的歌曲。
会员登录后,可管理自己上传过的歌曲信息。
(6)后台管理。
管理员可以方便的管理音乐信息和会员信息。
1.3.2本人所做的工作
(1)点播歌曲流程的设计与实现。
(2)会员功能流程的设计与实现。
包括注册会员,点播歌曲、上传、下载歌曲。
(3)后台管理员的设计与实现。
在后台,系统管理员可以方便的管理音乐信息和会员信息。
1.4论文结构
本论文分为六章,分别如下:
第一章为引言部分,介绍了设计的选题背景、国研究现状、设计研究容与本人所做的工作、系统所用到的环境。
第二章为系统功能分析,提出了系统的功能,并在次基础上进行了设计可行性研究和需求分析。
第三章为概要设计,做了系统的总体结构图和数据库设计工作。
第四章为系统的详细介绍。
第五章关于系统页面的实现。
第六章为系统做全面的调试与测试。
1.5开发环境的介绍
MircsoftWindowsXP:
作为系统开发的操作系统平台,程序都在它上面运行通过。
MySQL5.0:
主要存储网页上抽取的信息,方便以后建索引。
MyEclipse9.0:
用来开发系统的查询模块。
Tomcat6.0:
是一款Java平台下的服务器软件,模拟网络环境。
1.5.1开发工具之JSP
1.JSP技术简介
JSP(JavaServerPage服务器网页)是从1998年开始出现的新技术。
由Sun公司倡导、许多公司参与一起建立的一种动态网页技术标准,是基于JavaServlet以及整个Java体系的web开发技术。
在传统的网页HTML文件(*.htm,*.html)中加入脚本片段和JSP标记(Tag),构成JSP网页(*.jsp)。
JSP技术为创建显示动态生成容的web页面提供了简便的方法。
JSP作为Java家族的一员,承袭了Java的特点,即跨平台的特性,也即一次编译,到处运行。
在国外,己经大量使用JSP作为网络应用程序的开发工具,而在国,尽管JSP还不是主流开发技术,但是由于JSP的强大优势,许多都已经准备转向JSP,利用JSP来开发动态。
2.JSP工作原理
JSP是面向服务器的,因此支持任何浏览器。
当Web服务器和JSP引擎遇到访问JSP网页的请求时,JSP引擎将请求对象发送给服务器端的相关组件,比如JavaBean组件、Servlet或EJB等,然后由服务器端组件处理这些请示,可能需要从数据库或数据存储中检索信息,然后服务器端组件再将响应对象返回JSP引擎。
JSP引擎将响应对象传递给JSP页面,根据JSP页面的HTML格式完成数据编排,最后Web服务器和JSP引擎将格式化后的JSP页面以HTML格式返回客户浏览器。
这就是当前构建中广泛采用的浏览器——Web服务器——后台数据库的三层架构模式。
因为JSP所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果。
3.JSP体系结构
JSP开发标准给出了两种使用JSP的技术,可以归纳为模式一、模式二。
模式一:
JSP+JavaBeans技术。
在这种模式中,JSP页面独自响应请求并将处理结果返回给客户。
Bean处理所有数据访问,JSP实现页面的表现,以实现容生成与显示相分离。
当处理复杂的大型应用时,页面被嵌入大量的脚本或Java代码段,当需要处理的商业逻辑复杂时,这种情况会变得非常糟糕,大量的嵌代码使得页面程序变得复杂,对于前端界面设计人员,这是不可思议的事情。
所以模式一可用于小型应用,不能够满足大型应用的需要。
模式二:
JSP+Servlet+JavaBeans技术。
Servlet技术是一种采用Java技术来实现CGI
功能的一种技术,Servlet技术非常适于服务器端的处理和编程,并且Servlet会长期驻留在存。
从开发的观点看,模式二具有更清晰的页面表现,清楚的开发者角色划分,在大规模项目开发中,模式二更被采用,模式二也更符合当前流行的MVC结(Model/view/controller),其中Servlet对应controller,处于控制者的位置,处理HTTP请求,负责生成JSP中使用的Beans组件或对象,并判断应将请求传递给哪个JSP等,JSP对应view,负责生成最终的动态网页并返回给浏览器。
而JavaBeans对应的是Model,实现各个具体的应用逻辑与功能。
4.JSP的特点
简化的页面生成技术。
JSP页面用标准的HTML或XML命令来处理页面的格式化和布局设计,而用类似HTML、XML的标记和Java语言编写的脚本程序生成页面容。
这使得页面形式与页面容互相独立,非常有利于大型项目的分工合作。
(1)与Java平台有机集成。
JSP技术是Java2平台的重要组成部分,JSP使用Java语言作为它的脚本语言。
在JSP页面中可以使用几乎所有的Java组件和JavaAPI,这就能充分发挥出Java语言的强大功能。
使用JSP技术可以创建具有高度可伸缩性和可靠性的Web应用程序。
(2)硬件平台和服务器无关性。
JSP作为Java家族的一员,秉承了Java技术的“一次编写,随处可用(WriteOnce,RumAnywhere)”的特性,可以运行于大多数流行的操作系统平台及Web服务器,这种与服务器硬件和操作系统平台的无关性是JSP相对于其它动态网页技术最大的一个优点。
(3)功能可扩展性。
如同Microsoft的JSP技术可以通过ActiveX/COM组件来扩展功能一样,JSP可以通过JavaBean和EJB(EnterpriseJavaBean)以及自定义的标记来扩展功能。
JSP可以通过JDBC,与诸如Oracle、SQLServer这样的大型关系数据库进行连接。
JSP提供了一些隐含对象。
这些隐含对象在JSP页面中可以直接引用,而不必首先声明。
利用JSP提供的这些隐含对象,可以使脚本功能更加强大,并且编程更加容易、方便。
例如,利用request对象,可以很容易地接收用户在HTML表单中提交的信息。
5.JSP的优缺点
JSP技术的优势:
(1)一次编写,到处运行。
除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。
基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。
相比ASP/.net的局限性是显而易见的。
(3)强大的可伸缩性。
从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。
这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
(5)支持服务器端组件。
web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面调用,以增强系统性能。
JSP可以使用成熟的JAVABEANS组件来实现复杂商务功能。
JSP技术的劣势:
(1)与ASP一样,Java的一些优势正是它致命的问题所在。
正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。
(2)Java的运行速度是用class常驻存来完成的,所以它在一些情况下所使用的存比起用户数量来说确实是“最低性能价格比”了。
从另一方面,它还需要硬盘空间来储存一系列的.java文件和.class文件,以及对应的版本文件。
JSP的工作模式如图1.1所示:
用户通过webserver访问到对方的服务器,获得所需要的服务。
图1.1JSP的工作模式图
1.5.2开发工具之MyEclipse9.0
MyEclipse,是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。
在结构上,MyEclipse的特征可以被分为7类:
(1)JavaEE模型。
(2)WEB开发工具。
(3)EJB开发工具。
(4)应用程序服务器的连接器。
(5)JavaEE项目部署服务。
(6)数据库服务。
(7)MyEclipse整合帮助。
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。
MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。
MyEclipse6.0以后版本安装时不需安装Eclipse。
MyEclipse生成WAR包并在Tomcat下部署发布。
首先是使用MyEclipse将web项目打包,右键选中项目,选择export;弹出Export的select窗体,选择JavaEE的WARfile(myeclipse)选项,然后选择工程名称和路径,单击完成就可以了。
打包完成以后我们将war放到tomcat的webapps目录下,并设置server.xml文件;然后运行tomcat,并输入项目的url就可以浏览了。
1.5.3开发工具之MySQL数据库
数据库技术作为数据管理技术,是计算机软件领域的一个重要分支,产生于60年代末。
现已形成相当规模的理论体系和实用技术。
优秀的数据库设计是应用成功的基石。
万万丈高楼平地起,数据库设计如同高楼的基石,是开发高品质应用的前提。
1.数据的体系结构
数据的体系结构分成三级:
部级(Internal),概念级(Conceptual)和外部级(External)。
这个三级结构有时也称为“三级模式结构”。
外部级:
最接近用户,是单个用户所能看到的数据特性。
单个用户使用的数据视图的描述称为“外模式”。
概念级:
涉及到所有用户的数据定义、是全局的数据视图。
全局视图的描述称为“概念模式”。
部级:
最接近于物理存储设备,涉及到实际数据存储的结构物理存储数据视图的描述称为“模式”。
数据库的三级模式结构是数据的三个抽象级别。
它把数据的具体组织留给DBMS去做,用户只要抽象地处理数据,而不必关心数据在计算机中的表示和存储,这样就减轻了用户使用系统的负担。
2.数据库管理系统(DBMS)
数据库管理系统(DBMS)是指数据库系统中管理数据的软件系统。
DBMS是数据库系统的核心组成部分。
对数据库的一切操作,包括定义、查询、更新及各种控制,都是通过DBMS进行的。
在不同的计算机系统中,由于缺乏统一的标准,即使同种数据模型的DBMS,它们在用户接口、系统功能方面也常常是不相同的。
用户对数据库进行操作,是由DBMS把操作从应用程序带到外部级、概念级、再导向部级,进而操作存储器中的数据。
DBMS的主要目标,是使数据作为一种可管理的资源处理。
DBMS的主要功能为:
(1)数据库定义功能:
DBMS提供数据定义语言(DDL)定义数据库的三级结构,包括外模式、概念模式、模式及其相互之间的映象,定义数据的完整性、安全控制等约束。
因此,在DBMS中应包括DDL的编译程序。
(2)数据库的操纵功能:
DBMS提供数据操纵语言(DML)实现对数据库中数据的操作。
基本的数据操作分成两类四种:
检索(查询)、更新(插入、删除、修改)。
(3)数据库的保护功能:
数据库中的数据是信息社会的战略资源,对数据的保护是至关重要的大事。
DBMS对数据库的保护主要通过四个方面实现:
(4)数据库的恢复:
在数据库被破坏或数据不正确时,系统有能力把数据库恢复到正确的状态。
(5)数据库的并发控制:
DBMS的并发控制子系统能防止错误发生,正确处理好多用户、多任务环境下的并发操作。
(6)数据库的完整性控制:
保证数据库中数据及语义的正确性和有效性,防止任何对数据造成错误的操作。
(7)数据库的安全性控制:
防止XX的用户蓄谋或无意地存取数据库中的数据,以免数据的泄露、更改或破坏。
(8)数据库的存储管理:
把各种DML语句转换成低层的文件系统命令,起到数据的存储、检索和更新的作用。
(9)数据库的维护功能:
它有许多实用程序提供给数据库管理员如:
数据装载程序备份程序、文件重组织程序、性能监控程序。
(10)数据字典:
数据库系统中存放三级结构定义的数据库称为数据字典(DD)。
对数据库的操作都要通过访问DD才能实现,通常DD中还存放数据库运行时的统计信息。
本系统中所涉及到的MySQL数据库是众多的关系型数据库产品中的一个,相比较其它系统而言,MySQL数据库可以称得上是目前运行速度最快的SQL语言数据库。
除了具有许多其它数据库所不具备的功能和选择之外,MySQL数据库是一种完全免费的产品,用户可以直接从网上下载数据库,用于个人或商业用途,而不必支付任何费用。
总体来说,MySQL数据库具有以下主要特点:
(1)同时访问数据库的用户数量不受限制;
(2)可以保存超过50,000,000条记录;
(3)是目前市场上现有产品中运行速度最快的数据库系统;
(4)用户权限设置简单、有效。
如今,包括Siemens和SiliconGraphics这样的国际知名公司也开始把MySQL作为其数据库管理系统,这就更加证明了MySQL数据库的优越性能和广阔的市场发展前景。
与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQLCluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。
对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
目前Internet上流行的构架方式是LAMP和LNMP,即使用Linux作为操作系统,Apache和Nginx作为Web服务器,MySQL作为数据库,PHP/Perl/Python作为服务器端脚本解释器。
由于这四个软件都是免费或开放源码软件(FLOSS),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的系统。
使用MySQL,安全问题不能不注意。
以下是MySQL提示的23个注意事项:
(1)如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就需要使用SSH隧道来加密该连接的通信。
(2)用setpassword语句来修改用户的密码,三个步骤,先“mysql-uroot”登陆数据库系统,然后“mysql>updatemysql.usersetpassword=password(’newpwd’)”,最后执行“flushprivileges”就可以了。
(3)需要提防的攻击有,防偷听、篡改、回放、拒绝服务等,不涉及可用性和容错方面。
对所有的连接、查询、其他操作使用基于ACL即访问控制列表的安全措施来完成。
也有一些对SSL连接的支持。
(4)除了root用户外的其他任何用户不允许访问MySQL主数据库中的user表; 加密后存放在user表中的加密后的用户密码一旦泄露,其他人可以随意用该用户名/密码相应的数据库;
(5)用grant和revoke语句来进行用户访问控制的工作;
(6)不使用明文密码,而是使用md5()和sha1()等单向的哈希函数来设置密码;
(7)不选用字典中的字来做密码;
(8)采用防火墙来去掉50%的外部危险,让数据库系统躲在防火墙后面工作,或放置在DMZ区域中;
(9)从因特网上用nmap来扫描3306端口,也可用telnetserver_host3306的方法测试,不能允许从非信任网络中访问数据库服务器的3306号TCP端口,因此需要在防火墙或路由器上做设定;
(10)为了防止被恶意传入非法参数,例如whereID=234,别人却输入whereID=234OR1=1导致全部显示,所以在web的表单中使用”或”"来用字符串,在动态URL中加入%22代表双引号、%23代表井号、%27代表单引号;传递未检查过的值给mysql数据库是非常危险的;
(11)在传递数据给MySQL时检查一下大小;
(12)应用程序需要连接到数据库应该使用一般的用户帐号,只开放少数必要的权限给该用户;
(13)在各编程接口(CC++PHPPerlJavaJDBC等)中使用特定‘逃脱字符’函数;在因特网上使用mysql数据库时一定少用传输明文的数据,而用SSL和SSH的加密方式数据来传输;
(14)学会使用tcpdump和strings工具来查看传输数据的安全性,例如tcpdump-l-ieth0-w-srcordstport3306|strings。
以普通用户来启动mysql数据库服务;
(15)不使用到表的联结符号,选用的参数–skip-symbolic-links;
(16)确信在mysql目录中只有启动数据库服务的用户才可以对文件有读和写的权限;
(17)不许将process或super权限付给非管理用户,该mysqladminprocesslist可以列举出当前执行的查询文本;super权限可用于切断客户端连接、改变服务器运行参数状态、控制拷贝复制数据库的服务器;
(18)file权限不付给管理员以外的用户,防止出现loaddata‘/etc/passwd’到表中再用select显示出来的问题;
(19)如果不相信DNS服务公司的服务,可以在主机名称允许表中只设置IP数字地址;
(20)使用max_user_connections变量来使mysqld服务进程,对一个指定帐户限定连接数;
(21)grant语句也支持资源控制选项;
(22)启动mysqld服务进程的安全选项开关,–local-infile=0或1若是0则客户端程序就无法使用localloaddat了,赋权的一个例子grantinsert(use
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 在线音乐 管理 系统 毕业论文