毕业设计论文设计-视频点播系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

理工大学继续教育学院
毕业设计任务书
类别:高起本
专业:计算机科学与技术
班级:计算机科学与技术A班
姓名: X海括
毕业设计题目:视频点播系统
指导教师某某:宋晔
负责人签字:
年月日
题目:视频点播系统
本系统是一个小型系统,采用SQL Server数据库,将HTML、与JavaScript完美融合,力求界面美观、操作流畅、易于实现。

视频点播系统根据流媒体传输原理,在校园局域网的根底上实现了用户信息管理、视频文件的添加、删除、修改与在线播放和搜索功能。

任务要求:
一、任务内容描述:
1.开发工具.NET Framework
2.系统主要功能:
〔1〕操作员管理:能够实现后台管理添加、删除、修改操作员。

〔2〕用户管理:能够对前台注册的用户进展管理。

〔3〕视频管理:能够对视频资料进展上传、修改以与删除。

〔4〕分类管理:能够对电影的分类进展维护。

〔5〕评论管理:能够对用户的评价进展管理。

三.进度安排
1.第一阶段:要求完成系统需求分析;
2.第二阶段:要求完成系统设计;
3.第三阶段:要求完成系统实现与测试;
4.第四阶段:要求完成毕业设计论文的撰写。

指导教师签字:年月日
理工大学继续教育学院
毕业论文
论文题目:视频点播系统
专业:计算机科学与技术
班级:计算机科学与技术A班
某某: X海括
学号:a057
摘要
VOD(Video On Demand)即交互式多媒体视频点播,是随着计算机技术和网络通讯技术的开展,综合了计算机技术、通讯技术而迅速新兴的一门综合性技术。

它利用了网络和视频技术的优势,彻底改变了过去收看节目的被动方式,实现了节目的按需收看和任意点播,集动态影视图、声音、文字等信息为一体,为用户提供实时、交互,按需点播服务的系统。

视频点播系统根据流媒体传输原理,在校园局域网的根底上实现了用户信息管理、视频文件的添加、删除、修改与在线播放和搜索功能。

本系统是一个小型系统,采用SQL Server数据库,将HTML、与JavaScript 完美融合,力求界面美观、操作流畅、易于实现。

本文结合平台开发实例,阐述了基于Web的交互式视频点播系统的原理、软件结构和设计实现,并在此根底上对网络优化作相应的探索。

关键字:视频点播,
目录
摘要I
目录VI
第1章绪论5
第2章需求分析7
2.1 系统可行性分析7
2.1.1 技术可行性分析7
2.1.2 经济可行性分析7
2.1.3 管理可行性分析8
2.2 系统功能需求8
2.3 开发工具介绍8
8
2.3.2 SQL Server数据库9
2.3.3 .NET Framework11
第3章系统设计11
3.1 系统总体功能设计12
3.2 系统角色设计12
3.3 系统数据库设计15
3.3.1 逻辑结构设计15
3.3.2 数据表设计17
第4章系统详细设计21
4.1 普通用户功能设计21
4.1.1 系统注册页面21
4.1.2 会员登录26
4.1.3 电影搜索30
4.1.4 信息查看与修改31
4.1.5 密码修改34
4.1.6 电影详细信息37 39
4.2.1 操作员管理39
4.2.2 影片管理40
4.2.3 分类管理47
4.2.4 用户管理49
4.2.5 评论管理50 第5章系统的发布和运行51
5.1 发布51
5.2 IIS配置53
总结59
致谢错误!未定义书签。

参考文献61
第1章绪论
随着时代进步,人类对于信息存储方式和质量的要求也日渐提高。

最初,人们没有发明文字,就用一些物体来记录发生的大事,比如古代波斯人就用绳子来记录发生的事,又或者画图来记录发生的大事;随后人们发明了文字,拥有文字的民族就运用文字来记录过去所发生的重大事件而形成历史,比如中国古代的二十四史;到了19世纪人类发明了相机,用照片记录人类历史,到了二战后期,美国人发明了世界第一台计算机,直到现在计算机和内存在不断地更新和开展,并且到了今天互联网也开展到了一个繁荣阶段,几乎每时每刻都有庞大的数据量在互联网上传输,人们需要的存储的信息也记录到内存中,而现在人们所需要记录的数据形式也有较大的改变,比如某些重要的需要记录的新闻,相对用照片或者文字来说,用视频形式表现出来如此更具体。

众所周知,现在人们通过视频图像来获取的信息大局部来源于互联网和电视,但是电视往往不能第一时间将新的消息传达给人们,因此互联网相对电视来看,更适合将重大新闻的视频图像传达给用户。

而且,视频对于人们来说已经不仅仅拘泥于只是用来做存储重要新闻信息的手段,更倾向不同人群的不同需求,比如现在的一些拍客,喜欢把自己拍到的有趣的一些东西给朋友分享,或者一些学者为了能让学生们,而通过互联网,能更方便快捷实现人们对不同的视频的不同需求。

可以通过这样一种,将最新消息视频,或者用户自己的自拍视频,以与电视剧、电影剧集、综艺节目,或者一些教学视频,免费提供应用户,可以满足用户的不用需求,人们只要登录便可查询查看当天或者当前时段最受关注的视频信息,或者查询自己所需的视频信息并观看,用户仅需注册账号,将自己的视频上传到,供大家分享,而当天新闻视频,也可以上传到,这样人们可以直接第一时间点击观看。

这样,人们无需等待电视固定时段的新闻,而是随时随地的就能了解每时每刻,世界各地都发生了什么,注册后的会员也可以管理自己的视频,如果自己的视频不方便与人们分享,还可以对视频进展删除等操作。

视频点播VOD出现的最初动力是人们对广播电视的更高需求。

在传统的电视中,观众完全是被动的。

节目提供者播放什么节目,观众就只能观看什么节目,节目的播放时间也是无法按照观众的意愿改变的。

尽管电视台可以提供很多的节目,但要想完整地收看到一个自己满意的节目,对于许多人来讲也是不太容易做到的,因为在快节奏的现代生活中,许多人不可能为了看某一个电视节目而预先安排自己的时间。

被动
收看节目的人们希望能够按照自己的需要自由地点播节目。

视频点播的出现正迎合了人们的这种需求,这种信息服务方式符合人们对信息资源更深层次的需要。

第2章需求分析
2.1 系统可行性分析
2.1.1 技术可行性分析
系统的主要技术难度是解决并发流数。

国外许多大公司推出的专有视频服务器可以支持几百个并发流,但价格相当昂贵。

国内的几个厂家采用的是高档服务器作为视频服务器,可以支持几十个流,最多100个。

采用服务器替代专有视频服务器硬件本钱大大降低,但单台服务器的并发数和硬盘扩大的极限太小,不能满足大型的市场需求。

现在的软件开发语言有很多种,但一定要找一个功能强大,易学易用易掌握且适合自己的语言也就不多了。

本系统经过多种语言的优缺点的比照之后,采用的是作为本系统的开发平台,以SQL Server作后台的数据库。

2.1.2 经济可行性分析
软件的经济可行性是指软件所能带来的经济效益与开发设计所需要的投资相比,是否相适宜,同时还要看此软件能否真正给用户带来足够的经济效益,开发的这套系统正是考虑系统开发的本钱而设计。

本系统的开发在经济上是完全可行的。

开发此软件不需要大量的经费,而且是个人独立设计,可以节省许多费用,同时也可提高个人的实际动手能力。

综合以上技术特点,为了降低本钱,采用PC服务器作为视频服务器,而且PC服务器的性能还在不断提高,支持的并发数也在增加。

PC服务器作为视频服务器的方案正逐步取代以前的专有视频服务器。

为了解决多并发流数,采用多台PC服务器以集群的形式,通过控制网关完成服务器之间的协调,提高系统的利用率。

控制网关以与集群服务器技术是技术增值点。

另外,由于采用集群形式,不要求PC服务器实现最大流数,可以采用低档PC服务器和IDE硬盘,这样又可以提高单台视频服务器的性能价格比。

经过预研和测试,服务器的瓶颈不在CPU,这样可以用低档CPU和主板。

采用IDE RAID卡和7200转IDE硬盘的服务器仍可支持三、四十个并发流。

控制网关的技术经过前期的预研也是可行的。

系统的整个方案都是自行开发并在通用的软硬件平台上运行,具有较强的灵活性。

2.1.3 管理可行性分析
管理可行性是指是否适合管理人员的管理,由于本系统不需要大量的人员来维持维护,只需要几个人来维护数据库、视频信息,人员信息等,通过现有的管理制度,在管理方面是可行的。

综上所述,此系统能够确定开发,在技术和经济等方面都可行,并且能实现低投入和视频点播上传。

因此,视频点播系统的开发是完全可行的。

2.2 系统功能需求
网上视频点播系统是一种能够在线播放视频、上传视频的,目的是希望人们既能观看别人视频,也能自己上传自己的视频,满足当今人们的精神需要。

视频点播系统应该有以下功能:包括用户的注册、登录、视频查询、视频上传、视频播放、用户信息修改、视频信息修改、删除用户,删除视频文件、新建管理员。

并具有角色和权限控制来保证系统功能完善。

该系统的角色和权限分别如下:
角色主要有:超级管理员、普通管理员、普通用户。

超级管理员的权限与功能主要包括操作员管理、用户管理、视频管理、分类管理和评论管理。

〔1〕操作员管理:能够实现后台管理添加、删除、修改操作员。

〔2〕用户管理:能够对前台注册的用户进展管理。

〔3〕视频管理:能够对视频资料进展上传、修改以与删除。

〔4〕分类管理:能够对电影的分类进展维护。

〔5〕评论管理:能够对用户的评价进展管理。

普通管理员主要进展用户管理、视频管理、分类管理和评论管理。

普通用户主要进展电影的搜索、观看、评论以与个人信息的维护。

2.3 开发工具介绍
不仅仅是 Active Server Page (ASP) 的下一个版本;它还提供了一个
统一的 Web 开发模型,其中包括开发人员生成企业级 Web 应用程序所需的各种服务。

的语法在很大程度上与 ASP 兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。

可以通过在现有 ASP 应用程序中逐渐添加 功能,随时增强 ASP 应用程序的功能。

是一个已编译的、基于 .NET 的环境,可以用任何与 .NET 兼容的语言〔包括 Visual Basic .NET、C# 和 JScript .NET.〕创作应用程序。

另外,任何 应用程序都可以使用整个 .NET Framework。

开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。

可以无缝地与 WYSIWYG HTML 编辑器和其他编程工具〔包括 Microsoft Visual Studio .NET〕一起工作。

这不仅使得 Web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 Web 页的 GUI 和完全集成的调试支持。

当创建 应用程序时,开发人员可以使用 Web 窗体或XML Web services,或以他们认为适宜的任何方式进展组合。

每个功能都能得到同一结构的支持,能够使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进展自定义,这里只是列出几种可能性而已。

2.3.2 SQL Server数据库
所支持的数据库很多,因此根据实际需要来使用最合理的数据库。

数据库分为平面数据库和关系数据库,但平面数据库会使存储空间被重复和浪费,而关系数据库如此是由假如干个平面数据库连接在一起而形成的,采用关系数据库,用户不仅能像在平面数据库管理中那样搜索各个独立的记录,而且能够建立一个记录集合与另一个记录集合的关系,就能使用户的效率更高,操作更简捷。

数据库,简单而言就是要存储这些大量的数据而且要能正确的存储。

数据会随着时间的增加,而积累,导致数据量日渐庞大。

常常需要快速地在大量的数据中,找出设备的存储记录,同时也希望数据能有一定的某某性。

而数据的最终作用,就是提供决策分析的信息。

如果不能利用大量数据的分析,以最快的速度找到要找寻的数据,如此数据只是简单的资料罗列而己。

由最根本的元素组合成数据叫记录(Record)。

由一样性质的记录组合起来叫表(Table),相关的表组合起来就叫数据库 (Database)。

处理数据的建立、查询、更新等工作的程序就叫做数据库管理系统(Database Management System, DBMS)。

纵向的每一列叫做字段,横向组合起来就成为一条记录所有记录的集合就是表,与其他相关的表组合起来就叫做数据库。

数据库应用系统是以数据库为根底的信息管理系统。

手工方式的数据处理是繁琐
的重复劳动。

因此,也就有低效率、准确性差以与复杂化等缺点的不可防止性,随着计算机的出现,开辟了电子数据处理的新纪元。

本系统采用SQL Server 2005作为后台开发工具,其特点如下:
●Internet 集成
SQL Server 2005数据库引擎提供完整的XML支持。

它还具有构成最大的Web站点的数据存储组件所还需的可伸缩性、可用性和安全功能。

SQL Server 2005程序设计模型与Windows DNA构架集成,用以开发Web应用程序,并且SQL Server 2005支持English Query和Microsoft搜索服务等功能,在Web应用程序中包含了用户友好的查询和强大的搜索功能。

●可伸缩性和可用性
同一个数据库引擎可以在不同的平台上使用,从运行Microsoft Windows® 7的便携式电脑,到运行Microsoft Windows 2005数据中心版的大型多处理器服务器。

SQL Server 2005企业版支持联合服务器、索引视图和大型内存支持等功能,使其得以升级到最大Web站点所需要的性能级别。

SQL Server 2005 与Windows NT和Windows 2005故障转移群集共同支持不连续地将故障即时转移到备份服务器。

SQL Server 2005还引入了日志传送功能,使您得以在可用性要求较低的环境中维护备用服务器。

●企业级数据库功能
SQL Server 2005关系数据库引擎支持当今苛刻的数据处理所需的功能。

数据库引擎充分保护数据完整性,同时将管理上使并发修改数据库用户的开销减到最小。

SQL Server 2005分布式查询使您可以引用来自不同的分布式事务支持充分保护任何分布式数据更新的完整性。

复制同样使您能维护多个数据复本,同时确保单独的数据复本保持同步。

可将一组数据复制到多个移动的脱机用户,使这些用户自主地工作,然后将他们所做的修改合并回发到服务器。

●易于安装、部署和使用
SQL Server 2005中包括一系列管理和开发工具,这些工具可改良在多个站点上安装、部署、管理和使用SQL Server 2005的过程。

SQL Server 2005还支持基于标准的、与Windows DNA集成的程序设计模型,使SQL Server 2005数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝局部。

这些功能使您得以快速交付SQL Server应用程序,使客户只需最少的安装和管理开销即可实现这些应用程序。

●数据仓库
SQL Server 2005中包括析取和分析汇总数据以进展联机分析处理(OLAP)的工具。

SQL Server中还包括一些工具,可用来直观地设计数据库并通过English Query来分析数据。

2.3.3 .NET Framework
.NET Framework 是一个集成在 Windows 中的组件,它支持生成和运行下一代应用程序与 XML Web Services..NET Framework 旨在实现如下目标:
提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在 Internet 上分布,或者是在远程执行的。

提供一个将软件部署和版本控制冲突最小化的代码执行环境。

提供一个可提高代码〔包括由未知的或不完全受信任的第三方创建的代码〕执行安全性的代码执行环境。

提供一个可消除脚本环境或解释环境的性能问题的代码执行环境。

使开发人员的经验在面对类型大不一样的应用程序〔如基于 Windows 的应用程序和基于 Web 的应用程序〕时保持一致。

按照工业标准生成所有通信,以确保基于 .NET Framework 的代码可与任何其他代码集成。

.NET Framework 的目的就是要让建立Web Services 以与因特网应用程序的工作变的简单,它就相当于微软Web Services 引擎.许多程序设计师和使用者,非常渴望有一个完善而且透明清楚的根底架构,来建立Web Services〔因特网服务〕..NET Framework 就是为了这个需求,而提供的根底架构。

.NET Framework 提供了应用程序模型与关键技术,让开发人员容易以原有的技术来产生、布署,并可以继续开展具有高安全、高稳定,并具高延展的Web Services.对于.NET Framework 而言,所有的组件都可以成为Web Services,Web Services 只不过是另一种型态的组件罢了.微软将〔ponent Object Model,组件对象模型〕的优点整合进来,它可以不用像那么严谨的来栓锁两个对象,.NET Framework 以松散的方式来栓锁Web Services 这种型态的组件.这样的结果让开发人员非常容易的开展出强而有力的Web 服务组件,提高了整体的安全与可靠性,并且大大的增加系统的延展性。

第3章系统设计
3.1 系统总体功能设计
视频点播系统主要实现的功能是视频的播放,视频上传。

该系统的功能模块包括:用户权限管理模块、用户信息管理模块、用户信息查询模块、视频文件管理模块、视频文件查询模块等。

如图3-1所示。

3.2 系统角色设计
本系统按照功能可将角色分为超级管理员、普通管理员、普通会员。

每种角色具有不同的权限。

超级管理员:负责用户信息和视频信息的管理,以与栏目信息的维护。

普通管理员:可以实现视频信息的维护。

普通用户:采用先注册后登录的方式进入管理,在中可以在线浏览视频信息,搜索视频信息,以与在线观看视频信息与评论。

以下为三个角色的用例图:
图3-3 超级管理员用例图
3.3 系统数据库设计
3.3.1 逻辑结构设计
〔1〕视频信息实体属性图
在线视频点播系统中要有视频内容,视频是在线视频点播系统中密不可分的局部,因此要创建视频信息实体,用来保存视频的详细信息。

视频信息实体E-R图,如图3-5所示。

图3-5 视频信息
〔2〕用户信息实体属性图
用户是在线视频点播系统的使用者,是在线视频点播系统的重要组成局部,用户信息E-R图,如图3-6所示。

图3-6 用户信息
〔3〕系统整体实体属性图
在线视频点播系统的流程是用户登录假如用户名不存在,如此需先注册用户信息,注册完用户信息后,用户输入自己的账号与密码登录系统,在用户登录成功后系统根
据登录的某某信息与数据库表中的数据进展比照判断是普通用户是否存在,如果存在户,用户可以在线浏览提供的信息以与视频内容,可以根据自己的喜好搜索视频,用户在点击视频后,系统会显示视频的详细信息,用户可以点击收看该视频,系统会根据用户点击播放情况获得视频编号以与点击时间,添加到数据库的点击排行榜中,信息内容会反应到的点击排行榜中。

此外,用户可以在线修改自己的账号信息以与密码。

如果管理员登录,管理员需要对的节目信息进展管理,与时修改和删除已经过时的视频内容,以与发布新的视频供用户观看,系统会将最新发布的视频信息添加到数据库视频信息表中,并反应到点击排行榜中“最新视频〞栏显示。

在线视频点播系统的整体系统E-R图,如图3-7所示。

3.3.2 数据表设计
通过以上的需求分析与逻辑处理,本系统数据库中的数据表包括:分用户表
(Users)、视频信息表〔Movies〕、视频类型表〔MovieType〕、评论表〔Messages〕、管理员表〔Managers〕。

〔1〕用户表〔Users〕:本表主要记录用户的根本信息。

如表3-1所示。

表3-1 Users表
〔2〕视频类型表(MovieType):主要记录视频的类型。

如表3-3所示。

表3-3 MovieType表
〔3〕管理员表(Managers):主要记录管理员的用户名和密码。

如表3-4所示。

表3-4 Managers表
〔4〕视频信息表(Movies):主要记录视频的相关信息。

如表3-2所示。

表3-2 Movies表
〔5〕评论表(Messages):主要记录用户对视频的相关评论。

如表3-5所示。

表3-5 Messages表
第4章系统详细设计
本系统的详细设计与实现主要分为普通用户功能和管理员功能的设计和实现。

本系统中要经常对数据库进展添加、删除、修改等操作。

为了防止重复写一样的代码,将对数据库的根本操作封装到一个类中。

这样每次需要对数据库进展操作的时候,只要直接调用这个封装好的类就可以实现对数据库的增加、删除、修改等操作。

本系统的文件夹结构如下:
〔1〕App_Code:App_Code文件夹是应用程序包含的7个默认文件夹之一,本系统中添加App_Code文件夹来包含源代码文件sql.cs和checkcode.cs。

〔2〕App_Data:此文件夹中放置系统数据库文件。

〔3〕images:此文件夹中放置系统界面搭建所用的图片信息.
〔4〕f_ images:此文件夹中放置视频的封面,最新发布的节目的图片信息将保存在此文件下。

〔5〕Movies:此文件夹放置节目文件.最新发布的节目文件将保存在此文件夹下。

〔6〕NeatUpload:此文件中放置了本系统所使用的上传控件。

〔7〕Manager:此文件夹中放置了实现后台系统的所有页面文件。

4.1 普通用户功能设计
4.1.1 系统注册页面
只有注册后的用户才可以进入本系统。

当注册成功后会跳转到一个提示页面,过3秒后会进入本系统的主页面。

此时会将用户名保存到Session[“Uname〞]中,以便后面的调用。

具体流程如图4-1所示。

图4-2 用户注册页面
主要代码如下:
if (String.pare(Request.Cookies["CheckCode"].Value,
checkit.Text.ToString(), true) != 0)
{
Lcheck.Text = "验证码错误,请输入正确的验证码。

";
checkit.Text = "";
return;
}
else
{
Lcheck.Text = "";
string _Username = Username.Text.ToString();
string _Pwd = Pwd.Text.ToString();
string _sex = DropDownList1.SelectedValue.ToString();
string _Email = Email.Text.ToString();
DateTime _Birth = Convert.ToDateTime(txt_StartTime.Text);
string _Utele = Phone.Text;
sql submit = new sql(this.Response);
try
{
submit.Inset_Data(_Username, _Birth, _sex, _Pwd, _Email,
_Utele);
}
catch (Exception ex1)
{
Response.Write("<script>alert('注册失败!')</script>"); Response.Redirect("zhuce.aspx");
}
Session["Uname"] = _Username;
Response.Redirect("NextHop.aspx");
}
}
publicint Check_User()
{
sql checkname = new sql(this.Response);
int Uname_length = Username.Text.ToString().Length;
if ((Uname_length < 7) || (Uname_length) > 12)
{
Label8.Text = "长度不符";
Username.Text = "";
Username.Focus();
return 0;
}
else
{
int i = 1;
int check = checkname.Check_Uname1(Username.Text.ToString(), i); if (check == 1)
{
Label8.Text = "用户已存在";
Username.Text = "";
return 0;
}
else
{
Label8.Text = "用户可用";
return 1;
}
}
4.1.2 会员登录
刚进入本系统时,会显示最新电影的封面,只有注册后的用户才可以进入本系统。

在注册时自动进展用户名检测,对用户的输入格式进展自动检测。

具体流程如图4-3所示。

图4-4 用户登录页面
主要代码如下:
int login_check, i = 1;
sql login = new sql(this.Response);
int login_name = login.Check_Uname1(TextBox1.Text.ToString(), i);
if (login_name == 1)
{
login_check = login.Check_password(TextBox1.Text.ToString(), TextBox2.Text.ToString(), i);
if (login_check == 1)
{
if (String.pare(Request.Cookies["CheckCode"].Value,
TextBox3.Text.ToString(), true) != 0)
{
Label5.Text = "验证码输入有误!";
TextBox3.Text = "";
}
else
{
Session["Uname"] = TextBox1.Text.ToString();
Response.Redirect("master.aspx");
}
}
else
Label5.Text = "用户名或密码错误";
}
else
Label5.Text = "用户不存在";
}
4.1.3 电影搜索
可以根据电影名、主演、导演对是电影信息进展查找。

图4-5 电影搜索页面
主要代码如下:
Session["Name"] = TextBox1.Text.Trim().ToString();
Session["SelectName"]= DropDownList1.SelectedValue.ToString();
Response.Redirect("~/master.aspx?type=101");
在主页显示代码如下:
str = "select * from Movies ,MovieType where Movies.Mtype=MovieType.Mtype and "+Session["SelectName"].ToString()+" like '%"+
Session["Name"].ToString()+"%'";
DataSet ds = new DataSet();。

相关文档
最新文档