




免费预览已结束,剩余40页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本 科 毕 业 论 文 基于ASP.Net的在线影院系统-前台影片播放与分类模块 ASP.Net based Online Video System: Video Player and Categories Modules姓 名: 学 号:学院:软件学院系:软件工程专 业:软件工程年 级:指导教师: 年 月摘要随着计算机的全面普及以及宽带网络系统的建成和发展,视频点播系统被广泛应用于在线电影点播、多媒体课件点播、图书馆视频资料查询等用途。视频点播是综合了计算机技术、通讯技术、电视技术而迅速兴起的一门综合性技术。它涉及到信息量巨大的音频和视频在网上传播的问题,良好高速的网络是硬件条件,而流媒体技术则解决了如何在网络上传输动态的音视频节目的难题。视频流媒体技术一直被认为是互联网服务中的一个热点领域,但是由于技术、内容以及带宽等方面的限制,一直没有实现预料中的发展。目前,视频压缩技术已经取得了重大的进步,视频流媒体的传输速度、品质以及成本都得到了很大的改善,为视频媒体传输创造了有利条件,同时宽带网络的普及也使得多数家庭用户具备了享受网络视频服务的条件。我们的目标是设计并实现一个MVC三层架构的在线影视系统。结合实践,理解网页开发技术和数据库的基本知识,学习相关开发工具和应用软件,熟悉网站建设的过程,熟练掌握网络数据库编程方法。该系统主要用于在线点播视频、音频,并可为注册会员提供影音制品下载。该系统采用动态网页技术实现电影信息的发布,系统架构清晰,界面友好美观。并且,系统提供多种信息搜索及查看方式,用户可根据自己的需要,选择适合自己的搜索查看方式,快捷地查找到所需的电影信息。同时,系统提供电影视频等下载次数,观看点击次数等排行,更加直观的展示影片的可观赏程度以及受欢迎度。关键词:视频点播;流媒体;MVC三层架构 AbstractWith universal access to computers and the completion of broadband network systems and development, Video-on-demand systems are widely used in online movies-on-demand, multimedia courseware on demand, video libraries, such as use of information inquiries. Video on Demand is a combination of computer technology, communication technology, television technology and the rapid rise of an integrated technology. It involves a huge amount of information in the online audio and video transmission problem, a good high-speed network hardware, and streaming media technology to resolve how to transmission dynamics of the network audio and video programming problems.Video streaming media technology has been considered to be Internet service in the area of a hotspot, but because of technology, content and bandwidth constraints, has not been expected to achieve development. At present, the video compression technology has made significant progress in video streaming media transmission speed, quality and cost have been greatly improved for the video media to create favorable conditions for transmission. Our goal is to design and implement a three-tier MVC online video system. With a lot of practice, we have learnt understanding of web development technologies and database of basic knowledge, learning-related development tools and application software, familiar with the site-building process, proficiency in web-based database programming.The system is mainly used for online video, audio, and allowing a registered member to download audio and video products. The system uses dynamic pages of information technology to achieve the release of the film. In addition, the system provides a wide range of information search and view the way, the user can according to their own needs, choose their own search for ways to view and quickly find the information needed for the film. At the same time, it provide the film clicks, such as ranking, more intuitive display of films and can watch the level of popularity.Key words: Video on Demand; Streaming Media; A three-tier MVC.目录第一章 系统概述11.1开发环境11.1.1软件环境11.1.2硬件环境11.1.3 开发工具11.2 技术背景21.2.1 流媒体技术21.2.2 Ajax技术21.3 MVC设计模式简介3第二章 系统整体分析与设计52.1系统模块的划分52.1.1 前台模块分析52.1.2后台模块分析62.2用例分析62.2.1未注册用户用例分析62.2.2注册用户用例分析72.2.3管理员用例分析72.3 系统功能流程分析82.3.1前台功能流程分析82.3.2后台功能流程分析9第三章 数据库设计和实现103.1数据库表的设计103.2数据库表之间的关系143.3视图的设计15第四章 影片播放与分类模块的详细设计174.1 用户模块174.1.1用户注册184.1.2用户登录204.1.3用户密码找回224.2 播放模块244.3 影片分类模块264.3.1根据影片类型分类264.3.2根据影片产地分类294.4 广告和公告模块304.4.1广告304.4.2本站公告31第五章 系统的测试335.1系统测试的目的及必要性335.2系统测试的原则335.3系统测试过程34第六章 总结36参考文献37致谢语38ContentsChapter 1 System Overview11.1 Development Enviroment11.1.1 SoftWare Enviroment11.1.2 Hardware Enviroment11.1.3 Development Tolls11.2 Technical Background21.2.1 Streaming Media21.2.2 Ajax21.3 MVC Introduction3Chapter 2 Systems Analysis and Design52.1 System Modules52.1.1 Analysis of the future module52.1.2 Analysis of the background module62.2 Use Case Analysis62.2.1 Unregistered users Cases62.2.2 Registered users Cases72.2.3 Adminer Cases72.3 System Flow Analysis82.3.1 Future flow analysis82.3.2 Background flow analysis9Chaper 3 Database Design and Implementation103.1 Database table design103.2 Relationship between tables143.3 Design view15Chaper 4 Detailed Design of the Future Module174.1 Users Module174.1.1 Users Register184.1.2 Users Login204.1.3 Users GetBack Password224.2 Play Module244.3 Categories Film Module264.3.1 According to video type classification264.3.2 According to video production Category294.4 Advertising and Notice Module304.4.1 Advertising304.4.2 Notice31Chapter 5 System Test335.1 Purpose and Need335.2 Principle335.3 Process34Chapter 6 Summary36References37Thanks phrase38在线影视系统第一章 系统概述1.1开发环境该系统面向普通大众用户,平台要求符合大众水平,而非专业性很强的平台。同样的,开发环境也使用当前主流开发平台,且硬件要求不能太高,软件环境与硬件环境具体情况如下所述。1.1.1软件环境开发工具:Microsoft Visual Studio 2008, SqlServer2005, Dreamweaver开发语言:C#,Javascript开发平台:Windows XP软件建模:Visio1.1.2硬件环境CPU: Intel 赛扬 400 或同频率处理器以上 内存: 512MB或以上 硬盘: 最少剩余空间不得低于300MB 网络: TCP/IP协议支持的网络(拨号或者专线及局域网接入Internet都可以) 文件系统: FAT32 或者 NTFS (推荐NTFS) 1.1.3 开发工具Microsoft Visual Studio 2008是面向Windows Vista、Office 2007、Web 2.0的下一代开发工具,代号“Orcas”,是对Visual Studio 2005一次及时、全面的升级。VS2008引入了250多个新特性,整合了对象、关系型数据、XML的访问方式,语言更加简洁。使用Visual Studio 2008可以高效开发Windows应用。设计器中可以实时反映变更,XAML中智能感知功能可以提高开发效率。同时Visual Studio 2008支持项目模板、调试器和部署程序。Visual Studio 2008可以高效开发Web应用,集成了ASP.NET AJAX 1.0,包含ASP.NET AJAX项目模板,它还可以高效开发Office应用和Mobile应用。1.2 技术背景1.2.1 流媒体技术所谓流媒体是指采用流式传输的方式在Internet播放的媒体格式。 流媒体又叫流式媒体,它是指商家用一个视频传送服务器把节目当成数据包发出,传送到网络上。用户通过解压设备对这些数据进行解压后,节目就会像发送前那样显示出来1。流式传输方式则是将整个A/V及3D等多媒体文件经过特殊的压缩方式分成一个个压缩包,由视频服务器向用户计算机连续、实时传送。在采用流式传输方式的系统中,用户不必像采用下载方式那样等到整个文件全部下载完毕,而是只需经过几秒或几十秒的启动延时即可在用户的计算机上利用解压设备(硬件或软件)对压缩的A/V、3D等多媒体文件解压后进行播放和观看。此时多媒体文件的剩余部分将在后台的服务器内继续下载2。 1.2.2 Ajax技术Ajax全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术3。Ajax是一个涉及一组技术的术语,包括 Dynamic HTML(DHTML)和 XMLHTTPRequest 对象。DHTML 由三个元素组合而成,它们分别是超文本标记语言(Hypertext Markup Language,HTML)、JavaScript 代码和级联样式表(Cascading Style Sheet,CSS)。在 Web 页面使用 JavaScript 代码,可以动态地改变页面,包括添加、删除或更改页面内容。这就是 DHTML 的动态 部分。JavaScript 代码使用 XMLHTTPRequest 对象在加载页面后向服务器请求数据。这两种元素的组合从服务器动态请求数据然后使用这些数据更改页面就是 Ajax 的本质,也是 Web 2.0 站点的动态特性3。Ajax开发与传统的CS开发有很大的不同。这些不同引入了新的编程问题,最大的问题在于易用性。由于Ajax依赖浏览器的JavaScript和XML,浏览器的兼容性和支持的标准也变得和JavaScript的运行时性能一样重要了。这些问题中的大部分来源于浏览器、服务器和技术的组合,因此必须理解如何才能最好的使用这些技术4。1.3 MVC设计模式简介图1-1:MVC设计模式图资料来源:林善茂:MVC设计模式,赛迪网,2007年12月MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层。 视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型(Model)处理。比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。 模型(Model):就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是MVC最主要的核心。目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为应用设计模型的框架。它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。对一个开发者来说,就可以专注于业务模型的设计。MVC设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。抽象与具体不能隔得太远,也不能太近。MVC并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性。我们可以用对象编程来做比喻,MVC定义了一个顶级类,告诉它的子类你只能做这些,但没法限制你能做这些。这点对编程的开发人员非常重要。 业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据保存(持续化)。比如将一张订单保存到数据库,从数据库获取订单。我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。 控制(Controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后, 并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型5。第二章 系统整体分析与设计2.1系统模块的划分作为典型的应用型网站系统,整个系统可以分为前台与后台两个大的模块进行开发,其中前台模块又可以划分为:用户模块,搜索模块,影片排行模块,影片播放模块,影片下载模块,影片分类模块,公告与广告模块;后台模块可以细分为:管理员登录与退出,常规管理模块,影片管理模块,用户管理模块,专题管理模块,广告管理模块,其他管理模块。本人负责开发的是前台的部分模块,主要有:用户模块,影片播放模块,影片分类模块,公告与广告模块。2.1.1 前台模块分析前台模块包括:用户模块,搜索模块,影片排行模块,影片播放模块,影片下载模块,影片分类模块,公告与广告模块。具体划分如下图所示: 图2-1:前台模块划分图2.1.2后台模块分析后台模块包括:管理员登录与退出,常规管理模块,影片管理模块,用户管理模块,专题管理模块,广告管理模块,其他管理模块。具体划分如下图: 图2-2:后台模块划分图2.2用例分析根据系统整体需求分析可知,共有未注册用户,注册用户和管理员三类人员对该系统进行操作,他们在功能上能实现不同的操作。2.2.1未注册用户用例分析作为未注册用户,具有一定的功能权限,其主要功能有:用户注册,浏览影片信息,观看播放影片,搜索影片信息,查看影片排行。图2-3:未注册用户用例图2.2.2注册用户用例分析作为注册用户,较比未注册用户享有更多的功能权限,其主要功能有:用户登陆,密码找回,浏览影片信息,观看播放影片,搜索影片信息,查看影片排行,下载影片。 图2-4:注册用户用例图2.2.3管理员用例分析管理员作为整个系统后台的管理者,要维护整个系统的正常运作,及时处理错误报告等,操作功能较多,大致划分为:常规管理,影片管理,用户管理,专题管理,广告管理,其他管理。图2-5:管理员用例图2.3 系统功能流程分析在线影视系统功能较多,所有功能流程可以大致分为前台功能流程和后台功能流程,即为前台用户的浏览流程与后台管理员的管理流程。2.3.1前台功能流程分析前台功能流程相对简单,主要就是用户注册登录,观看影片,下载影片的流程,具体情况如下:图2-6:前台功能流程图2.3.2后台功能流程分析后台功能较为复杂,在系统整体分析时,我们只列出初步管理的功能流程,具体某个管理功能的流程在详细开发设计时再进行细化。图2-7:后台功能流程图第三章 数据库设计和实现数据库的设计是整个系统开发中极其重要的一部分,数据库设计的好坏将直接对影视系统的效率、功能的扩展、完善, 以及实现的效果产生直接影响, 合理的数据库库设计可以提高存储的效率,保证数据的完整和一致6。该系统使用SQL Server 2005 进行数据库的架构。3.1数据库表的设计具体所有表的结构请查看附件,以下分述与本人负责模块相关的数据库表的设计情况。电影信息表是整个系统之最为重要的一个数据库表,它用于存储影片的所有相关信息,播放,分类,管理等等一系列功能都与这个表的内容密切相关,也正是这个表的存在才能把所有其他数据库表相关联起来,表具体字段情况如下表:表3-1: T_Films 电影信息表T_Films字段名数据类型允许为空功能描述idint否影片ID(主键)PathIDint否影片路径IDFilmNamenvarchar(100)否影片名称FilmDirectornvarchar(100)是影片导演FilmPlayernvarchar(255)是主要演员FilmYearnvarchar(4)是影片发行年代FilmClassnvarchar(50)是影片二级分类FilmClassIDint否影片分类IDFilmFromnvarchar(50)是影片产地FilmFromIDint否影片产地IDFilmleveltinyint是影片等级FilmCleartinyint是影片清晰程度FilmPicnvarchar(255)是影片海报图片FilmIntrontext是影片介绍AddTimedatetime是添加时间FilmUpdateTimedatetime是影片更新时间Hitsint否点击次数DownCountint否下载次数FilmNumint否影片集数FilmCompletetinyint否是否连载中FilmIsCommendtinyint否是否首页推荐FilmPhyPathnvarchar(255)是影片物理路径FilmFoldernvarchar(255)是影片所在文件夹AllowDowntinyint是是否允许下载Tagsnvarchar(255)是标签Statustinyint是状态为了实现把影片根据不同类型进行二级分类的功能,特别设计了电影分类表,用来存储影片的分类信息,以及电影分类在系统页面上的显示模式等等相关信息,电影分类表的具体字段设计情况如下表:表3-2:T_FilmClass 电影分类表T_ FilmClass字段名数据类型允许为空功能描述idint否分类ID(主键)ClassNamenvarchar(100)是分类名称ClassStatustinyint是分类状态ShowAtIndexPageint是是否在主页显示ShowTemplateint是该类型使用的模板ClassSortint是分类的索引号ClassSortIndexint是一级分类索引ClassPIDint是分类所属一级分类ID为了实现另外一种影片分类的功能,即将影片按照产地进行分类,特别设计了电影地区信息表,字段具体设计情况如下表:表3-3:T_FilmFrom 电影地区信息表T_FilmFrom字段名数据类型允许为空功能描述idint否影片地区ID(主键)FromNamenvarchar(100)是影片地区名称FromSortint是地区排列顺序FromStatustinyint是状态由于许多影片为连续剧,会有一个影片名对应多个视频文件的情况出现,因此特别设计了这样一个视频信息表,以正确管理影片与视频文件之间的对应关系。表3-4:T_FilmsDetail 视频信息表T_FilmsDetail字段名数据类型允许为空功能描述idint否视频文件ID(主键)FileNamenvarchar(50)是视频文件名称FilmIDint是对应的影片IDSNsmallint是视频属于第几集ShowFileNametinyint是是否显示真实文件名在影片播放时,收集相关数据存储在播放信息记录表中,主要用于实现根据点播次数进行影片排行的功能。字段具体设计情况如下表:表3-5:T_PlayRecord 播放信息记录表T_PlayRecord字段名数据类型允许为空功能描述idint否播放记录ID(主键)FilmIDint是影片IDPlayDatedatetime是播放日期hitsint是点击次数在影片播放过程中出现错误的话,系统将收集错误信息,以便后台管理员进行影片纠错,故特别设计了一个错误报告表,具体字段情况如下表:表3-6:T_ErrorReport 错误报告表T_ ErrorReport字段名数据类型允许为空功能描述idint否视频文件ID(主键)FileNamenvarchar(50)是视频文件名称FilmIDint是对应的影片IDSNsmallint是视频属于第几集ShowFileNametinyint是是否显示真实文件名为实现用户模块,设计一个用于存储注册用户信息的表,成为用户模块的核心数据,具体字段情况如下表:表3-7:T_Register 用户信息表T_ Register字段名数据类型允许为空功能描述idint否用户ID(主键)RegNamenvarchar(50)否用户注册名RegPassnvarchar(50)否用户密码Emailnvarchar(50)否电子邮件Questionnvarchar(MAX)否密码提示问题Answernvarchar(50)否密码答案Sexbit否性别HomePagenvarchar(50)是用户主页QQnvarchar(50)是QQ号UserNamenvarchar(50)是用户姓名Birthdaynvarchar(50)是用户生日ComeFromnvarchar(50)是用户来自Statustinyint是用户状态为实现网站公告模块,设计一个用于存储网站公告信息的表,成为网站公告模块的核心数据,具体字段情况如下表:表3-8:T_Notices网站公告信息表T_Notices字段名数据类型允许为空功能描述idint否公告ID(主键)Titlenvarchar(200)否公告标题Contentntext是公告内容AddTimedatetime否添加时间Statustinyint否专题介绍为实现广告模块,设计一个用于存储广告内容信息的表,成为广告模块的核心数据,具体字段情况如下表:表3-9:T_AdInfo 广告内容表T_ AdInfo字段名数据类型允许为空功能描述idint否广告信息ID(主键)Contentntext是广告内容remarknvarchar(50)是广告描述3.2数据库表之间的关系各个数据库表之间存在着相互联系,所有表以影片信息表为中心相互关联,来存储完成各个功能所需要的数据,具体情况如下图:图3-1:数据库表关系图3.3视图的设计除了创建数据库表以外,我们还创建了三个视图以实现一些需要同时查询多个表数据的功能。视图V_ErrorReport:用来获得用户影片报错的错误报告。图3-2:视图V_ErrorReport图视图V_AdInfo:用来获得广告内容。图3-3:视图V_AdInfo图视图V_ZhuanTiFilm:用来获得专题中的影片信息。图3-4:视图V_ZhuanTiFilm图第四章 影片播放与分类模块的详细设计在开发整个系统过程中,我主要负责的模块是前台模块中的用户模块,影片播放模块,影片分类模块,广告与公告模块。在这一章中,将阐述这四个模块的详细设计。4.1 用户模块该模块主要功能是对不同的用户进行权限区分,以满足不同前台用户的功能需求,包括新用户注册,用户登陆,用户密码找回三个部分。为了实现该模块,设计了一个公用控件LoginBar放在MasterPage中,该公用控件提供用户登录功能以及用户注册和密码找回的页面跳转链接。在登录后跳转页面的时候,设置了一个名为UserName的Session来告诉页面是否是注册用户登录在这个页面,针对不同的Session指,LoginBar会显示不同的Panel,分别是针对未登录用户的登陆框和针对已登录用户的欢迎信息。下图中红色框选中的即为LoginBar.图4-1:公用控件LoginBar4.1.1用户注册点击公用控件LonginBar上的“注册”链接可直接进入用户注册页面,进行新用户的注册,如下页面:图4-2:用户注册页面注册页面中填写框后有红色星号的为必填项目,必填项空缺将无法完成注册,即使点击注册按键也无法完成页面跳转。其中密保问题和密保答案两项是极其重要的数据,它们是实现用户密码找回的关键数据。两次密码输入必须一致,否则将给出错误信息且无法通过注册。同样的,用户的电子邮件地址也必须符合的标准格式。剩下的几项则是非必填项目,空缺情况下也可以通过注册。具体如下图:图4-3:用户注册页面出错提示在用户注册页面中的出生日期项中,使用了一个日历控件,点击“浏览”按键将跳出日前选择的小面板,可以实现点击选择日期的功能,方便且统一了时间输入的格式,情况如下:图4-4:用户注册页面中的日历控件在注册时发生用户名已经存在的情况时,系统将给出提示,并跳回注册页面让用户重新填写注册。图4-5:用户名已被注册提示信息注册成功后,系统给出注册成功的提示,点确定后将跳转到主页。图4-6:用户注册成功提示信息点确定后,将以注册用户身份登录主页,LoginBar的位置将显示欢迎信息,如下图红色方框所选中那样。图4-7:用户注册成功后跳转至主页4.1.2用户登录用户登录可以在任何一个未登陆用户可到达的页面上进行,只需在公用控件LoginBar上的相应项中填写用户名和密码,然点击登陆即可。若用户名不正确,将给出提示如下:图4-8:用户登录失败提示信息若登录成功,则LoginBar的位置将显示“XX,欢迎您登录!”的信息,同时以注册用户的身份跳回登陆前浏览的那个页面,具体情况如下:图4-9:用户登录成功页面在登录成功后,若需要退出登陆,只需直接点击LoginBar上的“退出”即可,则系统则显示未登陆用户浏览的主页,如下:图4-9:退出登录页面4.1.3用户密码找回考虑到用户密码可能丢失的情况,附加了一个简单密码找回的功能,主页是利用之前用户注册时候填写的用户密保问题和密保答案,核对数据库中的用户表,以给出相应用户密码。该功能虽然简单细小,却着实解决了一些用户真实存在的需求,具体操作则是:点击主页上LoginBar的“忘记密码”链接,进入密码找回页面,如下:图4-10:密码找回页面根据系统提示,输入要找回密码的用户名,点确定后,若用户名不存在将给出系统提示:图4-11:密码找回用户不存在提示信息若所输入的用户名存在则显示对应用户的密码找回问题且显示相应的问题回答输入框,如下图:图4-12:密码找回问题页面系统给出密码找回问题后,输入答案,若不正确,将给出系统提示如下:图4-13:密码找回答案错误提示信息若密码找回答案正确,将给出用户名对应的密码,如下:图4-14:密码找回成功页面4.2 播放模块播放模块从用户操作的角度来看,较为简单,即为单纯的点击观看相应影片。事实上该模块涉及较多的问题,例如一个影片对应的视频文件的真实地址是:0/film/cartoon/ship.rmvb,为了服务器的安全,一般是不会直接把这个地址交给用户,以防止恶意入侵。同时,这个地址也不是由系统直接获取的,其中0是该主机服务器的IP,film为该主机配置IIS的一个虚拟目录名称,Cartoon才是视频文件的外层文件夹名称,同时也称为该影片的相对路径,最后ship.rmvb才是视频文件名称。在播放时,从影片数据表中提取影片路径ID以及影片的文件夹名称和物理路径,根据这个路径ID去找影片的播放线路,由播放线路可以得到影片文件所在的服务器地址和相对路径,最后系统才将服务器地址,相对路径,影片文件夹名称,物理路径拼凑在一起形成相应视频文件的真实路径,返回给播放器进行播放。为了防止恶意入侵,在这个地址拼凑的参数传递的过程中,设置了一个名为MovieUrl_Allow的Session,若该值不是“yes”则系统将返回一个随机的错误地址。针对连续剧类型的影片,采用的是一个文件夹内存放多个视频文件的处理方法,而这个文件夹的名称即为该影片的名称,同时也是播放路径的一部分,作为“影片文件夹名称”这样一项数据存放在影片数据库表中。由首页点击任一影片可以进入该影片的详细信息页面,且有播放链接,对于连续剧将提供具体每集的播放链接,如下图:图4-15:影片详细信息页面系统提供多条播放线路,且对于连续剧分集播放,用户可以点击播放,则系统跳出播放页面,若影片不存在或者有错误,则出现报错信息如下:图4-16:影片播放出错页面如果影片设置正常,服务器正常开通,播放线路畅通,则影片在播放页面顺利播放,如下图:图4-17:影片播放页面在播放页面中可以调节播放进度,声音大小,是否全频等播放控制,并且可以直接选择播放上下一集或者选择播放特定的集数。在前台播放进行的同时,影片相关的播放信息表将产生一条播放记录,同时更新对应影片的播放记录表,主要是插入具体播放时间以及增加该影片的点击播放次数,该数据项是作为影片排行的重要参照数据。4.3 影片分类模块在这个模块中,实现了对众多的影片进行分类以方便用户浏览观看的功能,影片分类采用了两种方式:一种是根据影片类型套用了二层目录的分类方式,另一种则是直接根据影片产地的简单分类方式。4.3.1根据影片类型分类影片根据类型进行分类,并采用二级分类方式,更加方便查找影片。为了实现二级分类的功能,在影片信息表中有影片类型ID与影片分类两个字段,而影片信息表中的FilmClass才是影片的二级目录名称。以这样的方式实现二级分类是为了方便对第一层目录的不同类型影片的显示模式进行不同的设置,即在影片分类表中提供影片分类显示模式这样一个数据项,就是为了不同的一级分类影片集合在主页以不同的模式显示,同时也方便了后台对于影片的分类管理,可以随时增加、删除、修改一个一级或二级目录。所有影片的一级分类结构如下:图4-18:影片一级分类图细化到第二级分类结构如下图:图4-19:影片二级分类电影频道图图4-20:影片二级分类连续剧场图图4-20:影片二级分类动漫天地图图4-21:影片二级分类综艺娱乐图在主页的头部设计有一个分类导航,可以很好的体现二级分类的实现,具体如下图:图4-22:首页分类导航除此之外,在主页上不同的一级分类模块分布可以选择不同的显示模式以实现主页上的模块二级分类。点击二级分类链接可以进入具体分类影片页面,列出用户所选中类型的所有影片,具体情况如下:图4-23:影片二级分类页面4.3.2根据影片产地分类也可以根据影片产地进行分类,为了实现这一功能,在数据库设计的时候就有专门建立一个影片地区信息表,根据地区不同存储影片信息。根据影片产地分类的具体分类结构如下:图4-24:影片按地区分类结构图为了实现这种分类方式,设计了一个公用控件FilmArea放入MasterPage,在主页加载时时根据不同的地域将影片进行分类,如下图:图4-25:影片按地区分类控件点击选择某一地区,则进入相应地区所产影片的页面,如下:图4-26:影片按区域分类页面4.4 广告和公告模块4.4.1广告广告这一块设计较为简单,主要是在首页底部添加了一个友情链接,可以通过后台进行管理,对应的数据库表为广告内容表,方便后台对主页上广告的增添、删除、修改等管理操作。图4-27:主页上的广告区域图4.4.2本站公告本站公告主要用于管理员对所有用户发布一些通知信息,必须在主页上显示,且内容相对简短,基本上是一句话讲清楚。相应的,公告信息数据全部存放在公告信息表中。公告设置在主页上个一小块区域,方便管理员发布信息,用户可以查看到公告,具体如下:图4-28:主页上的本站公告点击本站公告可以查看公告的详细内容,以及公告发布的准确时间,具体如下:图4-28:本站公告的详细内容第五章 系统的测试5.1系统测试的目的及必要性随着软件规模的不断扩大,软件设计的复杂程度不断提高,软件开发中出现错误或缺陷的机会越来越多。同时,市场对软件质量重要性的认识逐渐增强。所以,在软件项目实施过程中实行软件测试非常有必要。第一,软件测试是是来确认软件质量的,其一方面是确认软件做了你所期望的事情(Do the right thing),另一方面是确认软件以正确的方式来做了这个事件(Do it right)。 第二,软件测试是用来提供信息的,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。 第三,软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。如果一个软件产品开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷的。因此软件测试的第三个目的是保证整个软件开发过程是高质量的。5.2系统测试的原则原则是重要的指引,方法应该在原则的指导下进行。软件测试的基本原则是站在用户的角度,对产品进行全面测试,尽早、尽可能多地发现Bug, 并负责跟踪和分析产品中的问题,对不足之处提出质疑和改进意见。在软件测试过程中,应注意和遵循的具体原则如下:(1) 所有的测试都应追溯到用户需求。这是因为软件的目的是使用户完成预定的任务,满足其需求,而软件测试揭示软件的缺陷和错误,一旦修正这些错误就能更好地满足用户需求。(2) 应尽早地和不断地进行软件测试。由于软件的复杂性和抽象性,在软件生命周期各阶段都可能产生错误,所以不应把软件测试仅仅看作是软件开发的一个独立阶段,而应当把它贯穿到软件开发的各个阶段中去。在需求分析和设计阶段就应开始进行测试工作,编写相应的测试计划及测试设计文档,同时坚持在开发各阶段进行技术评审和验证,这样才能尽早发现和预防错误,杜绝某些缺陷和错误,提高软件质量。测试工作进行得越早,越有利于提高软件的质量,这是预防性测试的基本原则。(3) 在有限的时间和资源下进行完全测试找出软件所有的错误和缺陷是不可能的,软件测试不能无限进行下去,应适时终止。因为,测试输入量大、输出结果多、路径组合太多,用有限的资源来达到完全测试是不现实的。(4) 测试只能证明软件存在错误而不能证明软件没有错误,测试无法显示潜在的错误和缺陷,继续进一步测试可能还会找到其它错误和缺陷。(5) 充分关注测试中的集群现象
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025浙江瓯海铁路投资集团有限公司面向社会公开招聘工作人员4人考试参考题库及答案解析
- 2025安徽农业大学与中国农业科学院作物科学研究所联合招聘作物学博士后考试参考题库及答案解析
- 2025下半年云南国际经济技术交流中心公开招聘人员(2人)考试参考题库及答案解析
- 2026年中国电建集团河南工程有限公司校园招聘考试参考题库及答案解析
- 2025中国地质调查局天津地质调查中心(华北地质科技创新中心)第三批招聘野外驾驶员3人考试参考题库及答案解析
- 2025中医助理医师题库重点附答案详解
- 2025下半年黑龙江黑河学院招聘事业编制思政课教师5人考试参考题库及答案解析
- 2025年福建永春县金源城市建设有限公司招聘7人考试参考题库及答案解析
- 水生植物纺织印染原料创新创业项目商业计划书
- 水果市场创新创业项目商业计划书
- 酒吧服务考试题及答案
- 胰岛素皮下注射
- GB 4789.3-2025食品安全国家标准食品微生物学检验大肠菌群计数
- 危货运输企业安全生产管理制度汇编
- 摄影工作室合伙协议
- 补贴代办合同模板8篇
- 铁路路外环境安全课件
- 《心肌梗死急救护理》课件
- 河北省普通高中学业水平考试《实施细则》(试行)
- 急性心力衰竭中国指南(2022-2024)解读
- 建筑工程保修措施与管理方案
评论
0/150
提交评论