田利原毕业设计论文答辩6.10.doc_第1页
田利原毕业设计论文答辩6.10.doc_第2页
田利原毕业设计论文答辩6.10.doc_第3页
田利原毕业设计论文答辩6.10.doc_第4页
田利原毕业设计论文答辩6.10.doc_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学学 士士 学学 位位 论论 文文 基于 web 的视频点播系统的设计与实 现 姓姓 名 名 田利原 学学 号 号 200812010127 指指导导教教师师 孙涛 学校代码 10904 院院系系 部部所所 计算机科学系 专专 业 业 计算机科学与技术 完完成成日日期期 2010 年 05 月 28 日 学学 士士 学学 位位 论论 文文 基于 web 的视频点播系统的设计与实 现 姓姓 名 名 田利原 学学 号 号 200812010127 指指导导教教师师 孙涛 院院系系 部部所所 计算机科学系 专专 业 业 计算机科学与技术 完完成成日日期期 2010 年 05 月 28 日 摘 要 随着计算机技术和 INTERNET 的日新月异 宽带 VOD 视频点播技术因良好的 人机交互性和流媒体传输技术倍受教育 娱乐等行业青睐 视频点播系统根据流媒体传输原理 在校园局域网的基础上模拟基于 WEB 的视频点播系统 访问系统的用户可以浏览视频信息 点播 观看及评论视频 等操作 由于系统是一个小型系统 所以我们采用基本 MYSQL 数据库 易于实现 具体实现中将 JAVA JSP 及 JAVASCRIPT 完美融合 力求界面美观 操作流畅 并成功实现了用户信息管理 视频文件的添加 删除 修改及在线播放和搜索 等功能 这里结合平台开发实例 我阐述了基于 WEB 的交互式视频点播系统的协议 原理 软件结构和设计实现 关键词 JAVA MYSQL 视频点播 Abstract With the ever changing computer technology and the Internet Broadband VOD video on demand technology for good human computer interaction and streaming media transmission technology admired education entertainment and other industries favored The video on demand system basis class media transmission principle simulates in the campus local area network s foundation based on the WEB video on demand system the visit system s user may glance over the video information operations and so on selection and broadcast onlooking and commentary video frequency The system is a small so we have adopted basic Mysql database it is easy to achieve realization of the Java and Javascript is perfectly and Jsp to interface with the process operation and successful implementation of the user information management and video file add remove modify and online play and search for functions Here with the development platform example I set out an interactive WEB based VOD System protocol principles software architecture and design implementation Keywords JAVA MYSQL VIDEO ON DEMAND I 目 录 第 1 章 绪论 2 1 1 视频点播简介 2 1 2 可行性分析 2 1 2 1 市场可行性分析 2 1 2 2 技术可行性分析 2 1 2 3 经济可行性分析 2 1 3 小结 2 第 2 章 系统环境 2 2 1 系统开发平台 2 2 2 数据库平台 2 2 3 系统运行环境 2 2 3 1 软件运行平台 2 2 3 2 硬件运行平台 2 2 4 小结 5 第 3 章 系统分析 6 3 1 系统数据流分析 6 3 2 系统流程 7 3 3 系统数据实体及关系分析 7 3 4 系统的技术要求 9 3 4 1 系统功能要求 9 3 4 2 系统编码要求 9 3 4 3 系统界面要求 9 3 4 4 系统数据库要求 9 3 5 小结 9 第 4 章 系统设计 10 4 1 系统功能设计 10 4 2 系统数据结构设计 11 4 3 系统安全设计 12 II 4 4 小结 13 第 5 章 系统详细设计 14 5 1 系统主界面 14 5 2 用户注册 15 5 3 系统登录 15 5 4 用户服务 17 5 5 影片详细信息显示 19 5 6 影片播放及评论 20 5 7 小结 20 第 6 章 视频点播系统的应用与测试 21 6 1 测试方法 21 6 2 系统功能测试 21 6 3 小结 22 附录 23 参考文献 30 致 谢 32 基于 web 的视频点播系统的设计与实现 1 第 1 章 绪论 视频点播 VOD Video on Demand 出现的最初动力是人们对广播电视的更高 需求 在传统的电视中 观众完全是被动的 节目提供者播放什么节目 观众 就只能观看什么节目 节目的播放时间也是无法按照观众的意愿改变的 被动收看节目的人们希望能够按照自己的需要自由地点播节目 视频点播 的出现正迎合了人们的这种需求 这种信息服务方式符合人们对信息资源更深 层次的需要 1 1 视频点播简介 视频点播 英文简称 VOD Video on Demand 指的是按照用户的要求播放 视频 VOD 有很广泛的含义 包含了娱乐 教育 商业等领域的多种应用 如 影片点播 Movie On Demand 热点新闻点播 Hot News On Demand 交互视频 游戏 Interactive Video Games 和远程教学 Long Distance Learning 等 1 VOD 是一种受用户控制的视频分配业务 它使得用户可以交互的访问远端 服务器所存储的丰富节目源 它的实质是信息的使用者根据自己的需要主动获 得多媒体信息 2 视频点播与传统电视有本质不同 主要体现在以下两个方面 首先 视频点 播具有交互性 用户可根据个人需求选择视频节目 并指定该节目的起始时间 从这一点来说 视频点播也可以称为交互式视频点播 而传统电视是按事先安排好的程序播放节目 用户在选择和观看节目方面 是被动的 只有频道选择权 没有播放控制权 更不能对视频进行交互式操作 其次 VOD 系统中的信号是数字化的 而传统电视中的信号是模拟的 1 2 可行性分析 1 2 1 市场可行性分析 目前具有 VOD 点播功能的网站很多 如天天在线影视 互动影视城 目 前都是基于单台 PC 服务器的方案 最大链接数不超过 100 个 不适合用于大 型的 VOD 系统 虽然有专门的 VOD 视频服务器可以支持大流数 但价格一般 极其昂贵 基于 web 的视频点播系统的设计与实现 2 从应用范围上看 由于产品支持的访问量有限 只能应用在一些小型的 VOD 系统中 如酒店 卡拉 OK 包房 中小企事业学校的培训 商场等等 不 适合长期应用在大型社区网和城域网中 从价格上看 尽管几家都采用 PC 服务器方案 相对于专业视频服务器的 价格的确很低 但方案仍然要采用高档 PC 服务器 SCSI RAID 卡 和 SCSI 硬 盘 硬件成本仍然较高 3 综合几方面 我们开发出一套支持多并发访问量 软硬件成本低 管理完 善的小型 VOD 视频点播系统是有其市场空间和优势的 1 2 2 技术可行性分析 系统的主要技术难度是解决并发流数 国外许多大公司推出的专有视频服 务器可以支持几百个并发流 但价格相当昂贵 国内的几个厂家采用的是高档服务器作为视频服务器 可以支持几十个流 最多 100 个 采用服务器替代专有视频服务器硬件成本大大降低 但单台服务器的并发 流数和硬盘扩充的极限太小 不能满足大型的市场需求 1 2 3 经济可行性分析 软件的经济可行性是指软件所能带来的经济效益与开发设计所需要的投资 相比 是否相适宜 同时还要看此软件能否真正给用户带来足够的经济效益 我们开发的这套系统正是考虑系统开发的成本而设计 本系统的开发在经济上是完全可行的 开发此软件不需要大量的经费 而 且是个人独立设计 可以节省许多费用 同时也可提高个人的实际动手能力 综合以上技术特点 为了降低成本 我们采用 PC 服务器作为视频服务器 而且 PC 服务器 的性能还在不断提高 支持的并发流数也在增加 PC 服务器作 为视频服务器的方案正逐步取代以前的专有视频服务器 为了解决多并发流数 我们采用多台 PC 服务器以集群的形式 通过控制网关完成服务器之间的协调 提高系统的利用率 控制网关以及集群服务器技术是我们的技术增值点 另外 由于采用集群 形式 我们不要求 PC 服务器实现最大流数 可以采用低档 PC 服务器和 IDE 硬 盘 这样又可以提高单台视频服务器的性能价格比 经过我们预研和测试 服 基于 web 的视频点播系统的设计与实现 3 务器的瓶颈不在 CPU 这样可以用低档 CPU 和主板 采用 IDE RAID 卡和 7200 转 IDE 硬盘的服务器仍可支持三 四十个并发流 控制网关的技术经过前期的预研也是可行的 系统的整个方案都是我们自行开 发并在通用的软硬件平台上运行 具有较强的灵活性 1 3 小结 本章主要介绍了视频点播系统的意义和目的 并对本系统做了进一步的分 析 基于 web 的视频点播系统的设计与实现 4 第 2 章 系统环境 现在的软件开发语言有很多种 但一定要找一个功能强大 易学易用易掌 握且适合自己的语言也就不多了 系统经过多种语言的优缺点的对比之后 采用的是 Java 作为本系统的开 发语言 以 Mysql 作的数据库支持 2 1 系统开发平台 系统采用 Java 作为后台开发工具 Java 提供了一个统一的 Web 开发模型 其中包括开发人员生成企业级 Web 应用程序所需的各种服务 4 它提供一种新的编程模型和结构 可生成伸缩性和稳定性更好的应用程序 并提供更好的安全保护 2 2 数据库平台 Java 所支持的数据库很多 因此我们要根据实际需要来使用最合理的数据 库 数据库分为平面数据库和关系数据库 但平面数据库会使存储空间被重复 和浪费 而关系数据库则是由若干个平面数据库连接在一起而形成的 采用关 系数据库 5 用户不仅能像在平面数据库管理中那样搜索各个独立的记录 而且能够建 立一个记录集合与另一个记录集合的关系 就能使用户的效率更高 操作更简 捷 系统采用 Mysql 作为后台数据库 因有其重要特性 Internet 集成 可伸缩性和 可用性 企业级数据库功能 易于安装 部署和使用等优点 2 3 系统运行环境 2 3 1 软件运行平台 本系统设计运行在 Windows98 2000 NT XP 操作系统环境下 因为该系统用 户界面友好 易学易用 2 3 2 硬件运行平台 CPU Intel的PENTIUMN处理器 可扩展2个CPU 硬盘 40G SCSI硬盘 可扩至4 6个硬盘 内存 512MB 基于 web 的视频点播系统的设计与实现 5 显卡 32位真彩色 网卡 loom 与IEEE 802 1p标准兼容 客户端 是普通的PC机 CPU Intel的PENTIUM11 266MHZ或更高 硬盘 E工DE硬盘 内存 32MB RAM 显卡 16位真彩色 网卡 10 loom 支持数据连接的普通适配卡 2 4 小结 本章主要阐述了系统的开发平台和数据库平台中的一些基本概念 Java 是目前在 Windows 平台中最强劲的 WEB项目开发工具之一 具有强大 的可视化设计功能 对数据库开发有独到的优势 产生的代码具有执行快 效 率高 安全性好等特点 基于 web 的视频点播系统的设计与实现 6 第 3 章 系统分析 基于 Web 的视频点播系统需要实现的功能包括用户的管理 以及视频信息 的管理和使用等 具体来讲 它包含用户管理中常见的注册 登录操作 视频 信息的显示 播放视频管理中的添加 删除 修改等 同时为了方便用户使用 增加了按影片类别来显示等功能 这使得系统需 要在视频信息之外保留栏目信息 于是增加了对栏目信息的增加 删除和修改 的功能 在线视频点播系统是在对一些用户观看电影的实际方式调研后 以实际为 基础进行设计的 该系统属于 B S 模式 用户可以浏览 点播视频 管理员可 对用户 视频信息进行增加 删除以及修改等操作 该系统包括三大模块 会 员管理 视频信息显示播放 视频的搜索 3 1 系统数据流分析 由于简化 系统的用户角色仅设置了普通游客和注册用户 系统采用先注册后登录的方式进入系统网站 在网站中可以在线浏览视频 信息 在线观看视频信息及上传视频 根据用户的角色和需求进行划分后 可以归纳出整个系统的数据流图 用 户通过表单输入用户信息 点击注册 注册通过提示登录 登录用户进行登陆 验证合法提示登录成功 未通过验证以游客身份访问系统 如图 3 1 所示 用户注册 符合条件 图 3 1 a 用户注册流图 操作用户 对输入的 表单验证 注册成功 提示用户登录 基于 web 的视频点播系统的设计与实现 7 用户登录 注册用户 普通游客 图 3 2 b 用户登录流图 3 2 系统流程 调查视频点播的业务流程应顺着系统信息流动的过程逐步地进行 内容包 括各环节的处理业务 信息来源 处理方法 信息流的去向 提供信息的时间和 形态 报告 单据等 通过对视频点播业务的实际调查进行系统分析 最后我们设计出我们系统的业务流程图 注册用户登录以后可以对自己的 用户信息进行修改 查看视频信息 对视频点播观看 进行评论等操作 系统 的业务流程 如图 3 3 所示 用户 视频信息查询 登陆 视频信息评论在线点播视频 用户退出 视频下载修改个人信息 管理 员 修改用户信息 登陆 各信息查找修改发表评论 管理员退出 修改公共消息修改视频信息 图 3 3 视频点播业务流程图 3 3 系统数据实体及关系分析 为了把用户的数据要求清楚 准确的描述出来 通常建立一个概念性的数 据模型 也称为信息模型 概念性数据模型是一种面向问题的数据模型 是按 操作用户 登录验证 浏览 查询 点播 发表 评论 浏览 查询视频信息 基于 web 的视频点播系统的设计与实现 8 照用户的观点对数据建立的模型 数据模型中包含 3 种相互关联的信息 数据对象 数据对象的属性及数据 对象彼此间的相互连接的关系 6 1 数据对象 数据对象是对软件必须理解的复合信息的抽象 数据对象彼此之间是相互 关联的 2 属性 属性定义了数据对象的性质 必须把一个或多个属性定义为标识符也就是 说 当我们希望找到数据对象的一个实例时用标识符属性作为关键字 通常简 称为 键 3 联系 客观世界中的事物彼此间往往是有联系的 数据对象之间相互连接的方式 称为联系 也称为关系 联系可分以下 3 种类型 1 一对一联系 1 1 2 一对多联系 1 M 3 多对多联系 M N 结合数据表及字段信息 整个数据库的 E R 图的详细描述见图 3 4 所示 user 用户信息表 PKuser userid name password email issuper quest answer mess 视频信息表 PKvoid fileid name filename hits class1 sizev image times descr mainman talks talk 影片评论表 PKtalk id vname autor msg address times publ 公共消息表 PKpubl id topmess leftmess 属于 M 1 拥有1M 属于M1 拥有 1 M 图 3 4 视频点播数据库 E R 图 基于 web 的视频点播系统的设计与实现 9 3 4 系统的技术要求 3 4 1 系统功能要求 1 系统设计的各项功能能够正确完成 2 对输入的数据能判断出是否为非法数据或越界数据 系统会自动给出提 示 告诉用户重新输入 3 各模块在运行时互不干扰 各种操作的快捷键能够正确运行 4 对非法操作能够给出正确处理 3 4 2 系统编码要求 主应用程序的命名 主应用程序的命名应由项目负责人确定 能完全表达 出本系统意义的英文字符串即可 包括应用程序对象名 应用所在的库名 项 目名 可执行文件名都必须统一使用本命名 7 3 4 3 系统界面要求 1 各窗口的大小适中 布局合理 插有图版 界面美观大方 2 各窗口的控件及按钮的文字命名正确 有时还配有图标 3 4 4 系统数据库要求 1 表的设计合理 没有冗余的数据 2 表及字段的命名采用英文方式 字段类型及长度合理 3 表的主键 外键和索引正确无误 4 前台操作与后台数据库之间的连接正确 3 5 小结 本章主要分析了本系统的业务流程 数据库的逻辑关系 数据流关系 并用 具体的图形进一步说明 通过本章的论述使我们更加了解本系统的功能 基于 web 的视频点播系统的设计与实现 10 第 4 章 系统设计 4 1 系统功能设计 在线视频点播系统需要实现的功能包括用户的管理 以及视频信息的管理 和使用等 具体来讲 它包含用户管理中常见的注册 登录操作 视频信息的 显示 播放 搜索 评论以及个人信息资料操作 视频管理和评论管理中的添 加 删除 修改等 该系统属于 B S 模式 用户可以在线搜索 浏览 点播以及评论视频 并 可通过用户服务模块对个人信息进行修改等操作 该系统包括三大模块 会员管理 视频信息显示播放 视频信息搜索模块 本系统根据使用该网站的用户角色不同可分为两种用户 普通用户 采用先注 册后登录的方式进入网站 在网站中可以在线浏览视频信息 搜索 评论 上 传视频等操作以及对自己个人信息管理 普通游客 可以对本站的视频信息进 行浏览 也可以观看 评论等操作 本系统的功能模块由于简化只提供了用户模块 包括用户注册 用户修改个 人资料 浏览视频信息 搜索影片 点播发表评论等 如图 4 1 所示 图 4 1 系统功能模块图 基于 web 的视频点播系统的设计与实现 11 4 2 系统数据结构设计 本系统的数据库建表详见如下 1 在数据库中建立频道表 对视频进行分类如属于体育类 娱乐类等 频 道表包括了编号 频道名称 频道标签 频道图像等信息 详见表 4 1 频道表 表 4 1 频道表 列 名 数据类型 可否为空说 明 idint 10 NOT NULL 主键 自动递增 channelNamevarchar 50 NULL 视频频道名称 clablevarchar 50 NULL视频频道标签类别 channelImagevarchar 50 NULL视频频道图像 2 在数据库里建立一个评论表 存放对视频的评论信息 其中字段包括编 号 评论时间 评论内容 所属用户 所属视频等信息 详见表 4 2 评论表 表 4 2 评论表 列 名 数据类型 可否为空说 明 idint 10 NOT NULL 主键 自动递增 commentTimedatetimeNULL对某个视频的评论时间 contentsvarchar 200 NULL对某个视频的评论内容 userIdint 10 NULL是哪个用户发表的评论 videoIdint 10 NULL对哪个视频评论的 3 在数据库里建立一个用户信息表 存放注册中户的基本信息 其中包括 编号 email 密码 性别 注册时间 用户所在地 生日 联系方式 年龄头像等信 息 详见表 4 3 用户信息表 表 4 3 用户信息表 列 名 数据类型 可否为空说 明 idint 4 NULL 主键 自动递增 emailvarchar 100 NULL用户注册 email passwordvarchar 100 NULL用户注册密码 sexint 8 NULL 用户性别 基于 web 的视频点播系统的设计与实现 12 regTimedatetime NULL 注册时间 provincevarchar 20 NULL用户所在省 cityvarchar 100 NULL用户所在市 districtvarchar 100 NULL用户所在区 birthdaydatetimeNULL用户生日 qqvarchar 30 NULL用户的 qq msnvarchar 30 NULL用户的 msn ageint 30 NULL用户的年龄 headImagevarchar 100 NULL用户的头像 4 在数据库里建立一个视频信息表 存放视频的详细信息 其中字段包括 编号 视频信息名 视频文件名 点击次数 分类 视频大小 图片 上传时 间 主要演员 内容简介 评论等基本信息 详见表 4 4 视频信息表 表 4 4 视频信息表 列 名 数据类型 可否为空说 明 idint 10 NOT NULL 主键 自动递增 titlevarchar 200 NULL视频标题 userIdint 10 NULL视频所属用户 ID uploadTimedatetime NULL视频上传时间 playNumint 20 NULL视频被点击次数 tagsvarchar 200 NULL视频内容关键字 contentsvarchar 200 NULL视频描述 channelIdint 20 NULL视频所属频道 ID filePathvarchar 200 NULL视频文件路径 vImagevarchar 200 NULL视频图像 isDeleteint 10 NULL 视频是否被删除 0 代表删 除 4 3 系统安全设计 由于设备管理系统的数据量大 涉及面广 为使系统有效地运行 并始终 保持数据的正确性和完整性 防止数据的泄漏 需要采取一定的安全保密措施 基于 web 的视频点播系统的设计与实现 13 本系统的安全保密设计围绕以下两个方面进行 1 源程序编译 源程序经过编译生成特殊代码 可避免非法操作 起到安全保密的作用 另外 源程序编译后 计算机执行编译后的目标文件 也可以大大提高程序执 行速度 当然 系统正式交付使用后 仍需维护和完善 因此 不能抛开源程 序 较好的做法是 源程序由专人负责保管 未经许可不能随意使用 一般操 作人员只能接触目标文件 2 程序文件属性修改 为防止对库文件的单独操作 在程序中修改库文件的属性 进入系统时设 置为读写属性 退出系统时将其设置为只读属性 8 4 4 小结 本章是总体设计主要是对本系统的系统流程 数据流程进行分析 并且对 系统的功能进行分析 根据分析得到系统的功能 并且画出了功能模块图 以 及数据库的设计 对系统有更进一步的了解 基于 web 的视频点播系统的设计与实现 14 第 5 章 系统详细设计 系统说明对于系统的初级应用者来说是一个非常重要的部分 它详细的介 绍了本系统的基本应用 也就是说看了本系统使用说明书就等于学会了此系统 的基本应用 本文根据各个功能在主界面从左到右的顺序介绍了其应用方法 有系统登 陆 系统数据的添加 系统数据的统计 系统的查询与浏览等功能模块 对于一个系统来说 它应具备注册并登陆这一环节 这也是系统安全之所 在 否则任何人都可以使用该系统 则对系统内的数据安全具有严重的危险性 数据容易丢失或被更改 所以系统登陆是很有必要的 下面将介绍本系统的登陆过程和一些基本的要求 5 1 系统主界面 启动 IE 连接本系统网址 首先看到的是整个系统的主界面 在主页头部上 显示的一些服务信息 下面显示数据库里的所有视频信息 同时有注册 登录链接 用户可以注册和登陆 如图 5 1 所示 图 5 1 在线点播系统主界面示意图 基于 web 的视频点播系统的设计与实现 15 5 2 用户注册 点击系统主界面右上角的注册链接 进入系统的注册界面 本页面要求用户 输入基本的用户信息 为了有效防止某一个特定注册用户用特定程序进行不断 的登陆尝试本系统 注册使用了图片验证码 这里生成 4 个随机数字和杂乱背景的图片 数字和背景颜色会改变 服务 器端刷新 成功解决了重复登录 具体实现是通过产生验证码图片的文件 image1 jsp 脚本见附录 注册页面引用验证码图片的文件的脚本 reg jsp 脚本见 附录 如图 5 2 所示 图 5 2 在线点播系统注册界面 5 3 系统登录 通过注册验证后 进入登陆模块 提示输入注册的电子邮件和密码 如图 5 3 所示 基于 web 的视频点播系统的设计与实现 16 图 5 3 视频点播系统登录界面 登陆成功后进入用户服务模块 将会显示注册用户名 用户名头像 右上角也 会显示在线人数 同时提供了修改个人信息 修改密码 上传头像 上传视频等 4 个 用户服务模块 点击之后就会分别进入相应模块中 如图 5 4 所示 图 5 4 在线点播系统登陆后的用户服务模块界面 基于 web 的视频点播系统的设计与实现 17 5 4 用户服务 在用户服务模块中 用户点击修改个人信息链接 进修改个人信息界面 可 以对用户信息进行修改 如图 5 5 所示 图 5 5 在线点播系统用户修改个人信息界面 在用户服务模块中 如果用户点击修改密码链接 进入修改个人密码界面 提示输入旧密码 新密码 确认密码 如图 5 6 所示 图 5 6 在线点播系统取回密码界面 在用户服务模块中 如果用户点击上传头像链接 进修改个人头像界面 将 显示用户当前头像及上传新头像 如图 5 7 所示 基于 web 的视频点播系统的设计与实现 18 图 5 7 在线点播系统上传头像界面 在用户服务模块中 如果用户点击上传视频链接 进上传视频信息界面 提 示注册用户填写视频标题 视频简介 视频分类 视频标签 如图 5 8 所示 图 5 8 在线点播系统上传视频信息界面 填写完视频信息表单后 进入上传视频文件页面 该页面提示用户进行视频 基于 web 的视频点播系统的设计与实现 19 上传 如图 5 9 所示 图 5 9 在线点播系统上传视频文件界面 5 5 影片详细信息显示 在系统主界面里 最顶端是搜索视频功能模块 用户输入关键字后会分页显示 视频信息 如图 5 10 所示 图 5 10 在线点播系统搜索视频后分页显示界面 基于 web 的视频点播系统的设计与实现 20 5 6 影片播放及评论 本视频点播系统播放视频是通过引入一个 flash 播放器 仅支持 flv 文件格 式播放 本系统是通过传给 flash 播放器一个视频路径来播放本视频的 同时增 加视频评论功能 使用验证码防止重复提交评论 对评论进行分下显示等功能 当用户找到要观看的影片时点击播放按钮就会转入播放视频页面 display jsp 脚本见附录 在系统主界面中用户点击图片旁的视频标题后 进入播放及评论界面 该页 面可对视频进行评论 同时使用了图片验证码防止重复提交评论信息 如图 5 11 所示 图 5 11 在线点播系统视频播放及评论界面 5 7 小结 本章介绍了本系统的详细功能和使用步骤 通过具体的图文分别说明具体 细节 基于 web 的视频点播系统的设计与实现 21 第 6 章 视频点播系统的应用与测试 系统的应用是做系统的目标和意义 本章我们将讨论本系统的实际应用进 行分析 并进行必要的测试 6 1 测试方法 系统测试的目标是以最少的时间和人力找出软件中潜在的各种错误和缺陷 如对系统实施了严格的规范测试 就能够发现其中大部分的错误 系统测试能够确认系统实现的功能和性能与需求说明的一致性 系统测试 还能收集到足够的测试结果为系统可靠性提供依据 目前测试仍然是保证系统质量的关键步骤 它是对系统需求规格 设计和 编码最后的验证 复审 系统我们采用了一系统列的测试方案 在其中发现了一些系统漏洞 均通 过重新修改源程序将其弥补 近一步的系统测试将在今后的用户使用阶段来完 成 6 2 系统功能测试 系统以初步实现基本功能 在局域网网中先行测试使用 使用过的学生 老师可在休闲时根据需求点播喜欢节目 使用情况良好 可以对视频进行音量调 节 暂停 最大化播放 显示视频时长 播放效果如下图 6 1 所示 基于 web 的视频点播系统的设计与实现 22 图 6 1 在线点播系统视频播放示意图 6 3 小结小结 本章主要通过理论知识介绍系统的应用与测试 主要包括系统正常应用的 新特性及优点 测试的目的及方法 基于 web 的视频点播系统的设计与实现 23 附录 部分程序代码 产生验证码图片的文件 image1 jsp 255 fc 255 if bc 255 bc 255 int r fc random nextInt bc fc int g fc random nextInt bc fc int b fc random nextInt bc fc return new Color r g b 设置页面不缓存 response setHeader Pragma No cache response setHeader Cache Control no cache response setDateHeader Expires 0 在内存中创建图象 int width 60 height 20 BufferedImage image new BufferedImage width height BufferedImage TYPE INT RGB 获取图形上下文 Graphics g image getGraphics 生成随机类 Random random new Random 设定背景色 g setColor getRandColor 200 250 g fillRect 0 0 width height 设定字体 g setFont new Font Times New Roman Font PLAIN 18 画边框 g setColor new Color g drawRect 0 0 width 1 height 1 随机产生155条干扰线 使图象中的认证码不易被其它程序探测到 g setColor getRandColor 160 200 基于 web 的视频点播系统的设计与实现 24 for int i 0 i 155 i int x random nextInt width int y random nextInt height int xl random nextInt 12 int yl random nextInt 12 g drawLine x y x xl y yl 取随机产生的认证码 4位数字 String sRand for int i 0 i 注册页面引用验证码图片的文件的脚本 reg jsp 验证码 validationError 基于 web 的视频点播系统的设计与实现 25 function changeImage document getElementById image src image1 jsp k Math random 视频播放页面 display jsp 脚本 function changeImage first src image1 jsp num Math random function insertComment obj obj1 var inrand inrand value userId从session中直接获取 var userId obj var videoId obj1 var date new Date fck获取评论的内容 var contents FCKeditorAPI GetInstance cmtid GetXHTML true var cmt userId userId videoId videoId commentTime date contents contents commentDao insertComments inrand cmt function data inrandError innerHTML data if data 刷新评论列表 GetMessage 函数则是用来从应用程序的消息队列中按照先进先出的原则将这些消 息一个个的取出来 放进一个MSG结构中去 GetMessage 函数原型如下 BOOL GetMessage LPMSG lpMsg 指向一个MSG结构的指针 用来保存消息 HWND hWnd 指定哪个窗口的消息将被获取 UINT wMsgFilterMin 指定获取的主消息值的最小值 UINT wMsgFilterMax 指定获取的主消息值的最大值 getMessage get allcmt jsp vid param vid 将上次填写的内容清空 变成here FCKeditorAPI GetInstance cmtid SetHTML here 为了防止用户恶意的进行添加评论 需要将按钮置灰3到5秒时 间 同时刷新验证码 sub disabled true setTimeout function 3秒钟后进行验证码的刷新 同时将灰的按钮置为可点 可再次提交评论 此用途为了防止用户恶意点击 不停的插入评论 基于 web 的视频点播系统的设计与实现 26 sub disabled false first src image1 jsp num Math random 3000 function writeMessage cmtId2 innerHTML returnMessage function getCmtAjax url getMessage get url null writeMessage writeflashhtml swf uploadFile video displayer swf vvv param filePath width 456 height 392 在我这里输入吧 点这里换一张 评论列表 基于 web 的视频点播系统的设计与实现 27 用户注册 登录 public User isUserByLogin String email String password User user null Connection conn null PreparedStatement ps null ResultSet rs null String sql select from user where email and password try conn DBConnStandard getInstance getConn ps conn prepareStatement sql ps setString 1 email ps setString 2 password rs ps executeQuery while rs next user new User user setId rs getInt id user setEmail rs getString email user setBirthday rs getDate birthday user setNickname rs getString nickname user setPassword rs getString password user setHeadImage rs getString headImage user setRoleright rs getInt roleright catch SQLException e e printStackTrace finally DBConnStandard getInstance closeAll rs ps conn return user 显示视频 public List getAllVideo List list new ArrayList Connection conn null PreparedStatement ps null ResultSet rs null String sql select v u c channelName from video v user u channel c where v userId u id and v channelId c id order by v uploadTime desc VideoInfo info null User user null try conn DBConnStandard getInstance getConn 基于 web 的视频点播系统的设计与实现 28 ps conn prepareStatement sql rs ps executeQuery while rs next info new VideoInfo user new User user setEmail rs getString email user setBirthday rs getDate birthday user setNickname rs getString nickname user setPassword rs getString password user setHeadImage rs getString headImage info setUser user info setChannelId rs getInt v channelId info setChannelName rs getString c channelName info setContent rs getString v contents info setFilePath rs getString v filePath info setTags rs getString v tags info setTitle rs getString v title info setUploadTime rs getDate v uploadTime info setVideoId rs getInt v id info setUserId rs getInt v userId info setVideoImage rs getString v videoImage list add info catch SQLException e e printStackTrace finally DBConnStandard getInstance closeAll rs ps conn return list 用户评论 public String insertComments String inrand Comment comment 判断验证码是否正确 HttpServletRequest request WebContextFactory get getHttpServletRequest String rand String request getSession getAttribute rand if rand equalsIgnoreCase inrand return 验证码错误 Connection conn null PreparedStatement ps null String sql insert into comment userId videoId commentTime contents values try 基于 web 的视频点播系统的设计与实现 29 conn DBConnStandard getInstance getConn ps conn prepareStatement sql ps setInt 1 comment getUserId ps setInt 2 comment getVideoId ps setDate 3 comment getCommentTime ps setString 4 comment getContents ps executeUpdate catch SQLException e e printStackTrace return 视频频道 public List getAllChannel List list new ArrayList Connection conn null PreparedStatement ps null ResultSet rs null ChannelInfo info null String sql select from channel try conn DBConnStandard getInstance getConn ps conn prepareStatement sql rs ps executeQuery while rs next info new ChannelInfo info setId rs getInt id info setChannelName rs getString channelName info setClable rs getString clable info setChannelImage rs getString

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论