《网上视频点播系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《网上视频点播系统的设计与实现.doc(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流网上视频点播系统的设计与实现.精品文档.目 录1. 引言12. 系统分析12.1 需求分析12.2 技术可行性22.3 经济可行性23. 系统总体设计23.1 概述23.2 系统功能模块34. 数据库设计54.1 数据库表的设计54.2 数据库的安全性85. 系统的详细设计85.1 概述85.2 用户模块95.3 视频模块105.4 游客模块135.5 管理员模块146. 系统测试166.1 用户注册模块测试166.2 用户登录模块测试166.3 视频上传模块测试177. 结语17参考文献18山大商院网上视频点播系统的设计与实现学生姓名:贺云
2、鹏 指导教师:杨 森 贾丽丽内容提要:随着宽带速度的提升,在线视频播放已经达到了很流畅的程度,而且学校里也有许多爱好摄影的同学,因此视频点播系统有一个广阔的前景。该视频点播系统可以更好的在学校和学生之间进行互动沟通,建立一个具有交互性的视频网站。本论文主要介绍了山大商院网上视频点播系统的设计与实现。该系统主要分为前台系统和后台系统两个主要模块。前台实现的功能有用户注册、登录、评论、视频搜索以及点播和下载。后台实现的功能为管理员进行用户信息、视频信息、栏目信息的管理与修改等。本系统采用了JSP技术动态生成网页,开发工具为Myeclipse,数据库为SQL Server。关键词:视频点播JSP技术
3、MyeclipseSQL Server1. 引言视频点播出现的最初动力是人们对电视节目的更高需求。在传统的电视播放中,观众完全是被动的。节目提供者播放什么节目,观众就只能观看什么节目,节目的播放时间也是无法按照观众的意愿改变的。尽管电视可以提供很多的节目,但要想完整地收看到一个自己满意的节目,对于许多人来讲也是不太容易做到的。视频点播的出现正迎合了人们的这种需求,而且本系统是专门针对我们学校的学生设计的,更加具有实际意义。在校园局域网的基础上模拟基于Web并且按照B/S架构来实现网上视频点播系统,为山大商院提供一个自己的视频娱乐和学习的平台。我们可以通过这个网站,将最新消息视频或者学生的自拍视
4、频以及娱乐方面电视剧、电影剧集、综艺节目,或者一些教学视频(尤其是图书馆光盘),免费提供给学生,可以满足学生的不同需求,只要登录网站便可查询查看当天或者当前时段最受关注的视频信息,或者查询自己所需的视频信息并观看。2. 系统分析对系统进行一个必要的分析是设计实现系统所必不可少的一步,只有进行了充分的分析之后,才可以完成一个比较完美的系统。本系统分析包括:需求分析、技术可行性和经济可行性。2.1 需求分析需求分析是指需求分析人员将客户描述的需求用一种计算机语言描述出来分析用户的要求是否能实现。要设计出来一个比较好的系统首要也是最重要的就是需求分析。它是决定一个系统成功与否的关键。需求分析是至关重
5、要的一步,是来通过描述系统的需求定义系统中的重要功能模块,进而建立模型。需求分析是该系统的开发人员和用户共同完成的,通过需求分析来明确系统是否符合对应用户的需求,或者适用于哪些用户。通过自己对一些视频网站的考察,网上视频点播系统应该有以下功能:包括用户的注册、登录、视频查询、视频上传、视频播放、用户信息修改、视频信息修改、删除用户,删除视频文件、新建管理员等,并具有角色和权限控制来保证系统功能完善。2.2 技术可行性系统可行性分析主要根据系统的功能、性能、约束条件等分析在现有资源和技术条件下系统能否实现。本系统是采用Myeclipse8.6集成开发环境,使用B/S(Browser/Server
6、)架构,采用的模式是经典的MVC三层使用JSP和Servlet,数据库采用的是SQL Server,该数据库能提供一个可视化的界面,因此操作起来比较简单。而且本系统在后期维护起来,也比较方便。硬件方面的要求也不是很高,现在的硬件技术发展越来越快,性能越来越强大,容量越来越大,成本越来越小,一台普普通通的笔记本即可满足所有的硬件方面的配置,所以硬件方面是满足开发需要的,因此技术方面是可行的。2.3 经济可行性软件的经济可行性是指软件所能带来的经济效益与开发设计所需要的投资相比,是否相适宜,同时还要看此软件能否真正给用户带来足够的经济效益,本系统正是考虑系统开发的成本而设计。开发此系统不需要大量的
7、经费,而且是个人独立设计,可以节省许多费用,成本几乎为零,同时也可提高个人的实际动手能力,在系统中插入一些本校的广告等等,还可以带来一些经济收入。通过对该网站的收入支出总分析,我们可看出从客观角度讲,这个网站的收益/ 支出比将会是大于一的,所以说此系统在经济上同样是可行的。3. 系统总体设计3.1 概述在线视频点播系统需要实现的功能包括用户的管理、以及视频信息的管理和使用等。具体来讲,它包含用户管理中常见的注册、登录操作,视频信息的播放、搜索、评论以及个人信息资料操作,视频管理和评论管理中的添加、删除、修改等。在线视频点播系统是在对一些身边的人实际观看电影的方式调查后,以实际为基础进行设计的。
8、该系统属于B/S模式,用户可以在线搜索、浏览、点播以及评论视频,并可通过用户服务模块对个人信息进行修改。管理员可对用户、视频信息、评论信息进行增加、删除以及修改等操作。该系统包括四大模块:会员管理、视频信息显示播放、视频信息搜索、管理员模块。其功能结构功能如图1所示:山大商院网上视频点播系统管理员模块注册用户模块视频模块游客模块视频信息管理用户信息管理公告信息管理视频点播视频下载视频评论视频搜索查看公告等图1 系统功能结构图3.2 系统功能模块3.2.1 注册用户模块用户注册模块将采用AJAX来实现动态识别功能,在脚本段中利用$getJSON来判断用户名是否以重复,若重复,将在姓名的文本框后面
9、显示提示信息,告诉用户用户名重复,注册时用户必须填写的有姓名、密码,必填项都是通过JAVAScript函数来实现检验必填项是否已填写,只有必填项都填写之后并且不存在用户名重复,才能完成注册。用户注册模块的程序流程如图2所示:用户注册用户名是否重复填写相关信息信息格式是否正确注册成功NYNuY 图2 用户注册模块流程图3.2.2 用户登录模块用户登录时,将用户名和密码填写,先判断该用户名是否存在,若不存在则提示先注册,否则判断密码是否正确,如果密码不正确则返回通知密码错误重新填写,只有用户名和密码和数据库记录一直,登录才成功。用户登录模块的程序流程如图3所示:用户登录输入用户名密码用户名是否正确
10、密码是否正确登录成功NNYY图3 用户登录模块流程图3.2.3 视频上传模块视频上传仅限定管理员上传,当管理员登录后台管理时,才可以有权限进行视频的上传。该模块的程序流程图,如图4所示:开始上传上传完毕选择本地视频填写视频信息图4 视频上传模块流程图3.2.4 视频管理模块用户信息管理首先判断角色权限,用户只能修改自己信息,管理员能够修改所有用户信息,也能修改自己信息,删除用户信息。如图5所示:登录后台管理身份是否正确视频信息修改视频删除修改信息并上传上传完毕选择删除的视频删除完毕YN图5 视频管理模块流程图3.2.5 用户信息管理模块用户信息管理首先判断角色权限,用户只能修改自己信息,管理员
11、能够修改所有用户信息,也能修改自己信息,删除用户信息。如图6所示:用户信息管理是否为管理员修改自己信息修改完毕查看用户删除用户删除完毕YN图6 用户信息管理模块流程图4. 数据库设计4.1 数据库表的设计本系统采用SQL Server作为开发平台。SQL Server 是一个关系数据库管理系统。它最初是由Microsoft、Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server移植到Windows
12、NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX操作系统上的应用。SQL Server 2000 是Microsoft 公司推出的SQL Server数据库管理系统,该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。本系统所建立的表如下所示:(1) 用户信息表在数据库中建
13、立用户表,用户表包括了用户的用户名、密码、地址、用户的真实姓名和年龄等,详见表1:表1 用户信息表序号字段名字段名解释字段类型长度1user_id用户IDint42user_name用户姓名varchar503user_pw用户密码int44user_realname真实名字varchar505user_address地址varchar506user_sex性别varchar507user_qq用户QQint118user_age用户年龄int4(2) 投票信息表本表具体记录了主页面中,游客和注册用户的投票数目等情况,详见表2:表2 投票信息表序号字段名字段名解释字段类型长度1toupiao_
14、id投票IDint42toupiao_name投票内容varchar503toupiao_date投票日期date50(3) 视频信息表本表详细的记录了视频的名称、介绍、导演等一系列的相关信息,详见表3:表3 视频信息表序号字段名字段名解释字段类型长度1shipin_id视频IDint42shipin_name视频名称varchar503shipin_jianjie视频简介varchr504shipin_zhuyan视频主演varchar505shipin_daoyan视频导演varchar506shipin_leixing视频类型varchar507shipin_path视频长度int108
15、shipin_cishu播放次数int109shipin_yuanshiming视频路径varchar50(4) 点播资讯表本表记录了网站首页点播资讯的具体情况,详见表4:表4 点播资讯表序号字段名字段名解释字段类型长度1news_id资讯序IDint42news_title资讯标题varchar503news_content资讯内容varchar504news_data资讯日期date50(5) 留言评论表留言评论也是本系统的特色,本表记录了用户留言的具体情况,包括留言内容以及是给哪部影片的留言评论,详见表5:表5 留言评论表序号字段名字段名解释字段类型长度1liuyan_id留言IDint
16、42liuyan_title留言标题varchar503liuyan_content留言内容varchar504liuyan_date留言日期date505liuyan_user留言用户varchar506shipin_id视频编号int50(6) 公告管理表公告也是在本网站的首页,其内容可以是本学校的最新信息,或者是一些本学校的广告,都可以,本表具体内容见表6:表6 公告管理表序号字段名字段名解释字段类型长度1gonggao_id公告序号int42gonggao_title公告标题varchar503gonggao_content公告内容varchar504gonggao_date公告日期d
17、ate505gonggao_fabuzhe公告发布者varchar506gonggao_shanchu公告是否已删除varchar50(7)管理员用户表本表内容比较简单,记录了管理员的用户名等信息,详见表7:表7 管理员用户表序号字段名字段名解释字段类型长度1userId管理员IDint42userName管理员用户名varchar503userPw管理员密码int504.2 数据库的安全性SQL Server支持三级安全层次。在我们登录到SQL Server时,其实我们是经过了三步的验证。第一层次是用户提供正确的账号和密码登录到SQL Server,或者已经成功登录了一个可以映射到SQL S
18、erver的windows账号。但是在SQL Server登录并不意味着能够访问数据库,而是要经过第二层次的验证。第二层次的权限允许用户与一个或多个数据库相连,这一层次的实现要在数据库对象的用户中绑定登录账户。第三个层次的安全权限允许用户拥有对指定数据库中的对象的访问权限,例如:可以指定用户有权使用哪些表和视图、运行哪些存储过程。在第一层次中的windows账号,其实是在我们装机时给windows指定的自己登录到windows系统的账号,而作为windows系统管理员的我们其实也兼职了SQL Server的管理权。账户在登录到SQL Server后,如果想获得访问某个数据库的权限,是必须要在S
19、QL中获得安全账户的,确保登录的账号是安全的,就好比是我们出国的护照签证一样,想要去哪个国家必须获得该国家的签证和出入境章,这个安全账户就是在数据库对象的用户中绑定一个登录账号,证明这个登录账号是安全的。账户、角色、权限他们三者是没有严格的关系的,如果有的话就是角色给账户分配职能,而权限却又限制着角色和账户对数据库的操作。它们三者就好像是公司里的员工、职权、规章,公司按照职能非配不同的员工,但是每个员工却又受到公司规章的限制。5. 系统的详细设计5.1 概述本系统的详细设计主要分为前台设计和后台设计两大模块。前台主要是给用户进行浏览、查看、评论和下载等一系列的操作,界面简洁明了,美观大方;后台
20、则主要是针对系统的维护人员,登录后台可以管理视频和用户的一系列信息。本节将详细的介绍这两大模块的功能。5.2 用户模块5.2.1 注册用户模块进入在线视频点播系统的主界面如图7所示:图7 系统主界面点击【没有注册】,进入注册页面,用户填写注册相关信息,点击【确定】,系统验证用户名是否重复,正确则显示“注册成功”,进入主页面,则用户即可登录。若用户名存在,系统显示错误。如图8所示:图8 用户注册界面5.2.2 用户登录模块进入系统主界面后,输入用户名和密码之后,点击【登录】,就可以正常登录本系统。如果密码不对,或者用户被管理员删除和冻结,则无法正常登录本系统。如图9和10所示:图9 用户正常登录
21、界面图10 用户异常登录界面5.2.3 用户密码找回模块如果长时间未登录系统把密码忘记了,可以通过当时所填写的相关信息找回密码,点击【找回密码】,填写相关的信息,点击确定,系统则弹出对话框现实密码。如图11所示:图11 用户密码找回界面5.3 视频模块5.3.1 视频搜索模块本模块可以利用查询功能查询自己想要的视频,加快用户的查询速度,输入关键字以后,点击【搜索】即可。如图12所示:图12 视频搜索界面5.3.2 视频播放模块视频的观看需要用户登录以后才能进行。如果用户以游客身份观看视频,则系统会提示“请先登录” 。用户以会员身份登录系统后,可以在网站上观看视频,并且还可以对视频进行评价。点击
22、主界面的【播放列表】后,选择自己喜欢的视频,点击【播放】即可。如图13和14所示:图13 视频播放界面(1)图14 视频播放界面(2)5.3.3 视频下载与评论模块用户观看视频后,也可以对其进行下载收藏,还可以通过视频信息栏中的留言板,对视频进行评价,对管理员提出宝贵的意见。评论的功能是调用了插件“FCK”的功能。利用现有的插件可以使得在编程过程中变得更加简洁。也是程序的出错率变得更低。要对视频进行下载,在播放列表中直接点击【下载】即可,进入视频详情页面后,在对话框输入留言,点击【提交评论】即可。如图15和16所示:图15 视频下载界面图16 视频评论界面5.4 游客模块5.4.1 资讯查看模
23、块对于游客来说,所具有的权限就比较简单了,只能进行资讯或者公共的查看和问卷调查的投票。要查看资讯或公共,直接点击主界面的标题即可进入查看详情。如图17所示:图17 资讯查看界面5.4.2 投票模块进入系统主界面后,会看到一个投票模块,游客或者注册用户都可以进行投票,投票的情况管理员可以登录后台进行查看。选择自己想要投票的项目,点击【投票】即可,系统弹出一个投票成功的对话框,3秒后该对话框自动关闭,投票成功。如图18所示:图18 投票界面5.5 管理员模块5.5.1 管理员登录模块在系统的主界面,点击【后台管理】,弹出管理员登录界面,管理员填写用户名和密码,点击【登录】,系统验证用户名和密码是否
24、正确,正确则显示“通过验证,系统登录成功”,进入后台管理页面。若用户名不存在或密码不对,系统提示错误。如图19所示:图19 管理员登录界面5.5.2 会员管理模块会员管理页面,主要是管理员登录后首先可以查看所有会员的注册信息,然后依据会员情况,把会员资格删除或者是冻结会员的功能。如果要进行此操作,则在操作栏下,对应的用户后面点击【删除】或者【冻结】即可,当用户此时已经处于冻结状态时,可以点击对应的【解冻】来取消对用户的冻结。如图20和21所示:图20 会员信息查看图21 会员信息删除5.5.3 视频管理模块改模块包括视频的添加、删除、以及信息的修改,还有对视频评论的删除。点击左侧的【视频添加】
25、,在视频添加页面填写好具体的信息以及选择好本地的视频文件后,点击【提交】即可,然后自动跳转到视频管理页面。在该页面,可以对视频的信息进行修改,还可以删除该视频的评论。直接点击相应的选项即可。如图22和23所示:图22 视频添加界面图23 视频维护界面5.5.4 新闻公告管理模块此模块的操作比较简单,主要是负责相关资讯的发布与删除。点击【视频新闻管理】,即可查看所有新闻的标题和内容,点击新闻标题后面的【删除】,可以删除此条新闻。如图24所示: 图24 新闻公告维护界面6. 系统测试对于系统测试,有两种基本方法可以用来标识测试用例,即功能测试(黑盒测试)和结构测试(白盒测试)。作为项目开发的最后一
26、步,决定系统的生命周期,本系统主要采用的是黑盒测试,即以用户的角度来对系统进行测试,通过不同角色对不同功能模块进行测试,来发现未知的错误,进而继续对系统进行修改,增强系统健全性。6.1 用户注册模块测试为了方便简洁,将采取表格的形式来把操作和结果列出来。注册模块测试的主要内容是在填写相关的信息时,将各种可能出现的情况都进行一些验证,以确定本系统是否存在问题,实际结果一切正常。具体测试结果见表8:表8 用户注册模块测试操作1. 打开注册页面,没有任何输入字符,点击相应的项目2. 输入一些非法的用户名、密码、E-mail,点击“确定”3. 输入一些正确的用户名、密码、E-mail,点击“确定”预期
27、结果1. 系统提示“请输入用户名”2. 系统提示“邮件格式不正确,请重新注册”3. 系统提示“注册成功”实际结果与所有预期结果一样,说明用户注册模块一切功能运行正常6.2 用户登录模块测试登录模块的测试比较简单,在系统主界面登录框中,输入一些正确或者错误的用户名和密码,以及让其为空,进行登录,结果一切正常。当用户名和密码都正确时,可以进入系统;当用户名不正确或者为空时,系统会提示出错。具体测试结果见表9:表9 用户登录模块测试操作1. 打开主界面模块,没有任何输入字符,点击相应的项目2. 输入一些非法的用户名、密码,点击“登录”3. 输入一些正确的用户名、密码,点击“登录”预期结果1. 系统提
28、示“请输入用户名”2. 系统提示“用户名或密码错误”3. 系统提示“登录成功”实际结果与所有预期结果一样,说明用户登录模块一切功能运行正常6.3 视频上传模块测试本模块测试内容为在上传视频时,将各种可能出现的情况都验证一遍,例如上传错误的视频格式或者只填写信息而不上传视频等,当视频格式不对时,本系统没有检测出来,存在小错误,其他功能一切正常。具体测试结果见表10:表10 视频上传模块测试操作1. 只输入视频名称而不上传视频。2. 输入正确的信息,在上传视频栏里上传一些照片3. 输入正确的信息,并且上传格式正确的视频预期结果1. 系统提示“请上传视频”2. 系统提示“视频格式不对,请重新上传”3
29、. 系统提示“发布成功”实际结果当视频格式不对时,系统应该可以自己检测出来并告知用户,本系统没有提示用户而是直接上传成功,在播放时候出错,所以此模块功能还有待进一步完善7. 结语本系统基本完成了需求分析所提出的目标,并能安全稳定地运行。在这次开发过程中,所采用的Myeclipse面向对象开发工具,SQL Server2000数据库技术和tomcat服务器实现了在线视频点播系统的基本功能。但是,由于自身的专业知识有限,在编写程序的过程中也遇到了一些困难,比如在判断用户名的时候,觉得有些困难,要按照特定的模式编译一些代码的软件添加到自己程序中,后来,在同学的提示下添加修改了一些代码,使得工作量减轻
30、了不少。由于自身的专业知识不够完善,系统还是存在着一些问题,比如,在线视频点播系统没有图片的上传、显示,美工的问题也有待提高,等等。通过毕业设计,我发现自己对于JAVA WEB的开发和数据库设计的知识掌握的还不够,设计和编程能力还有待于进一步提高。这次毕业设计给了我一个锻炼自己,强化专业知识的机会,通过这次毕业设计,我也得以了解知识的广袤天地,我相信,只要认真学习,多借鉴别人的经验,多思考,多实践,就一定能够成为一个合格的开发设计人员。经过了两个多月的学习和工作,我终于完成了我的毕业设计山大商院网上视频点播系统的设计与实现。从开始接到论文题目到系统的实现,再到论文的完成,每走一步对我来说都是新
31、的尝试与挑战,这也是我在大学期间独立完成的最大的项目。在这段时间里,我学到了很多知识也有很多感受,我开始了独立的学习和试验,查看相关的资料和书籍,让自己头脑中把一些忘掉的概念逐渐清晰,使自己系统一步步完善起来,每一次改进都是我学习的收获,每一次试验的成功都会让我兴奋好一段时间。参考文献1刘惠芬数字媒体技术应用与设计(第二版)M,北京:清华大学出版社,20082孙卫琴Java网络编程精解M,北京:电子工业出版社,20073杨贵基于项目学习的大学计算机文化基础课教学设计D.内蒙古:内蒙古师范大学,20074李强,陈宗德计算机应用基础WEB考试与自动评卷系统的设计与实现J 自动化与信息工程,2008
32、,200-3505白广元Java Web整合开发完全自学手册M,北京:机械工业出版社,20096王珊,萨师煊数据库系统概论M,北京:高等教育出版社,20067陈志泊数据库原理及应用教程(第二版)M,北京:人民邮电出版社,20088张华良Struts完全手册(第二版)M,北京:电子工业出版社,20079崔群法,王咏梅,李有军Struts2.0从入门到精通M,北京:电子工业出版社,200910杨金奎Apache tomcat6高级编程M,北京:人民邮电出版社,200911闫生忠,陈亚芍,尹世伟基于Web的网络计算机技术在高校化学科研与教学中的应用J,计算机与应用化学,2008,25(11),145
33、1-145412Tiziana Catarci University of Rome .BilVideo: A Video Database Management SystemJ.Multimedia,2011,(10),66-7013陈文周基于以太网实现VOD点播的方法研究J 电子技术,2008,(3):21314郑仁祥VOD系统中信道调度文问题综述J 东北大学报,2009,(6)Design and implementation of the business college of shanxi university online video-on-demand systemAbstrac
34、t: With the improvement of campus broadband technology, Video playback can reach a relatively smooth degree, and also there are many hobbies photography students in our school. Therefore the Online video on demand system has a broad prospect. To build a video website of our own school. This discours
35、e mainly introduces the design and implementation of online video on demand system. The system consists of two main modules of the system and the background system, Realize the function of user registration, login, commentary, video search and video-on-demand and download. Background to realize the
36、function of user information, video information, column information for the administrators management and modification. This system uses the JSP technology to generate dynamic webpage, development tools for Myeclipse, database SQL Server.Keywords: video on demand; JSPtechnology; Myeclipse; SQL Server