毕业设计(论文)-录音录像管理平台的设计与实现.doc
《毕业设计(论文)-录音录像管理平台的设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-录音录像管理平台的设计与实现.doc(23页珍藏版)》请在三一文库上搜索。
1、 ZHEJIANG University of Water Resources and Electric Power毕业设计(论文)题目: 录音录像管理平台的设计与实现 系(部): 信息工程与艺术设计学院 专业班级: 软件技术 12-1 姓 名: 学 号: 201238016 指导教师: 指导教师: 迄止时间:2014年 11月 14日 2015年 05月30日2015 年 04 月 24 日浙江水利水电学院毕业设计录音录像管理平台设计说明书作者:刘鑫指导教师:王红霞目 录引言21. 系统概述21.1 系统功能21.2 系统开发环境32. 系统分析(详见附录3)33. 数据库设计53.1 数据
2、库选择53.2 数据库详细设计53.3 数据库的安全性54. 系统设计64.1 系统总体设计64.1.1 系统结构图114.1.2 系统模块124.2 前台系统实现124.3 界面展示134.3.1 用户登陆134.3.2 主界面134.3.3 录音记录144.3.4 视频记录144.3.5 铃音配置154.3.6 通话白名单154.3.7 中转站设置164.3.8 IP 段设置164.3.9 IP限流设置164.3.10 话机升级174.3.11 流量监控174.4后台系统实现175. 运行维护手册186. 设计总结评价18参考文献20附录21附录1 系统需求21附录2 影像接口报文21附录
3、3 设计文档21附录4 运维手册21引言继上海银监发布【2013】140号文件后,2014年7月中国银监会北京监管局文件,京银监发【2014】132号关于印发商业银行产品销售录音录像工作指引的通知,通知要求北京区域各分支机构进一步加强理财产品销售流程和管理规范的文件要求,各分支机构在销售理财产品尤其是高风险(如代销类)产品时必须进行风险揭示及录音录像1. 系统概述1.1 系统功能本系统主要完成以下功能(详见附件1) 录音管理(1) 录音统计(2) 录音记录 视频管理(1)视频记录 话机设置(1)来电铃音(2)答录提示音(3)话机设备(4)录音提示音(5)话机绑定信息(6)通话配置(7)通话白名
4、单 传输配置(1) 中转站设置(2) IP段设置(3) IP限流设置 系统配置(1) 话机升级(2) 系统升级(3) 修改密码 系统监控(1) 流量监控 影像上传(1) 上传影像(2) 定时器 影像调用(1) esb传输(2) extra接口(3) ECM影像平台 托盘(1) 一键安装(2) 通信协议(3) 话机交互(4) USB传输(5) http长连接1.2 系统开发环境本软件管理系统采用的开发环境与开发语言为Eclipse/IDEA、vmcssjQuery,后台语言采用java,托盘采用的DEPHI,使用的数据库为ORACLE/DB2,服务器为linux/Windows server20
5、081。2. 系统分析(详见附录3)我们针对需求画了一幅设计分析图,该图清晰展现出我们整个平台的大致结构图2-1 概要设计图图2-2 去电流程图图2-3 来电流程图3. 数据库设计3.1 数据库选择本系统所采用的数据库是ORACLE/DB28,103.2 数据库详细设计数据库设计文档请参照附件2的数据库设计文档。3.3 数据库的安全性数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。在数据库系统中,大量的数据集中存放,同时又为许多用户直接共享,是宝贵的信息资源,因此系统的安全保护措施就显得更为重要。键全的数据库安全机制可以防止数据库被恶意的破坏和非法的存取。本系统平台
6、安全性设计在数据库设计上就以体现,我们将每个页面当成一个请求,每个菜单按钮配置在数据库,当你登录时,我们会检查当前用户的级别,你的级别取决于你能看到多少东西,可以发起什么请求,可以看到什么页面,那么,即使你非法登录进我们的系统,可是该用户并非有权限查看我们的系统,那么你看到的也许是一片空白,这算不算是一个惊喜呢,总之,我们对安全性做了一系列的处理,在此不一一赘述8,10。4. 系统设计对话机和系统配置后,我们最关键的就是要将得到的录音录像记录上传到服务器,并且我们还将真正的影像上传至影像平台,我们会实时的对上传的影像进行监控。4.1 系统总体设计 本系统采用的前端框架为velocity/JQu
7、ery/CSS/JSONP我们封装的JS/bootStrap,Velocity是一个基于Java的模板引擎,它可以独立产生源代码、HTML和报告,也可以与其他系统(或应用)相结合提供模板服务1,4,5,7。之前有考虑过有freemaker,由于freemaker在性能上没有velocity的好,所以最终还是采用了velocity作为我们系统的前端框架1,6。在开发前端的时候,我们封装了一套前端框架,该套框架里JS处在核心地位,我们借助bootStrap框架,对JS进行了二度封装,就像JQuery,Ajax那样,他的最终都是JS代码,但是他的功能却远远超出了JS,我们在进行一系列操作的时候,经常
8、会遇到JS跨域问题,JS缓存问题,AJAX请求问题,回调问题,我们开发出一套策略,如,JSONP。该策略在你引用JS时可以帮你注册一个命名空间,以至于不会再出现JS跨域无法调用,以及调用多次等烦恼,当然还有一系列功能,在此便不再一一赘述1,4,5,6,7。我们的后台框架用了Spring,Struts2,但是我们与数据库交互的并不是ibatis,我们研究了ibatis的原理后,自己写了一套类ibatis,在此称为ibatis like,简称为libatis,不管是持久层,还是数据层来说,这个框架我们最终目的希望是方便于程序员的,而hibernate注重的是效率,对程序员其实并没有太大帮助,我们发
9、现ibatis其实对这一方面有了很大的补救,但是我们希望有自己的思想融入,比如link操作,我们很希望查询语句,或者其他DDL语句而已被在此调用,就和面向对象一样,这样对程序员来说无非是个福音,所以我们对ibatis进行了改进,开发出了一套libatis。以前遇到的数据层框架总是支持某种,或某一种数据库语言,这就使得不同程序员之间写SQL语句时都要统一某一种数据库语言,比如ORACLE的,MySQL的,甚至DB2的语法不尽相同,但是这让程序员很是头疼,在此我们在系统开发出了这样一套策略,不管任何程序员,只要你的SQL语句能在任何一个主流的数据库语言上顺利执行通过,那么任何主流的数据库都支持你的
10、语句,甚至还可以link过来,这就为开发节省了许多不必要的麻烦,在之后的更换数据库操作时,只需要把数据库指向和数据库地址更改即可2,9,10。我们系统经常会和其他系统对接,例如:CRM系统,个贷系统等等。那么我们系统之间是通过什么方式进行数据交换的呢,很多人会想到数据表,对,之前我们是通过中间库的形式进行数据交互的,但是我们发现,当连续对接3个系统以上,库的空间就会很大,造成许多资源浪费现象,于是,我们采用了当下流行的一种形式,ESB传输。在面向SOA的架构与应用中,服务是基本的开发与管理对象。采用面向服务的架构方法,就是为了利用服务这一企业IT资产,灵活而快速地满足不断变化的业务需求。为了保
11、证服务的有效使用,增加服务的重用度和利用率,就必须建立统一的服务规范。服务规范包括服务的定义与确立,服务的封装,服务的开发,服务的应用,服务的管理等各个环节进行规范性约定2。我们针对ESB传输写了一套接口,对方只需调用我们的webservice即可,我们会返回消息头以及消息,报文详见附录2。我们系统上传影像时并不是直接上传到服务器,而是上传到影像平台,我们在ECM模块里对录音记录,录像记录等影像记录封装成一个实体,我们上传时只需将这个实体内的影像进行上传即可。我们将话机内的录音以及录制的录像上传到服务器的时候,我们采用了ZMQ技术3。Dive into A MQ (aka ZeroMQ), t
12、he smart socket library that gives you fast, easy, message-based concurrency for your applications. With this quick-paced guide, youll learn hands-on how to use this scalable, lightweight, and highly flexible networking tool for exchanging messages among clusters, the cloud, and other multi-system e
13、nvironments. A MQ maintainer Pieter Hintjens takes you on a tour of real-world applications, using extended examples in C to help you work with A MQs API, sockets, and patterns. Learn how to use specific A MQ programming techniques, build multithreaded applications, and create your own messaging arc
14、hitectures. Youll discover how A MQ works with several programming languages and most operating systems - with little or no cost. Learn A MQs main patterns: request-reply, publish-subscribe, and pipeline Work with A MQ sockets and patterns by building several small applications Explore advanced uses
15、 of A MQs request-reply pattern through working examples Build reliable request-reply patterns that keep working when code or hardware fails Extend A MQs core pub-sub patterns for performance, reliability, state distribution, and monitoring Learn techniques for building a distributed architecture wi
16、th A MQ Discover whats required to build a general-purpose framework for distributed applications3。当然我们还使用了ZMQ中间件技术,我们的托盘在读取话机内的未上传录音时,会调用服务端的ZMQ接口进行上传,我们将文件封装为消息队列开始上传,在托盘的日志里将会看到上传行为的日志,上传后,在我们的服务端日志里也能看到上传信息。我们在本地开发使用的是tomcat,而在服务器上部署的是jndi配置,也就是用的是websphere,以下简称was,我们在was上部署的上下文根为banger,也就是我们公司的
17、英文缩写,was是 IBM 的软件平台。它包含了编写、监视运行全天候的工业强度应变 Web 应用程序和跨产品、跨平台解决方案所需要的整个中间件基础设施,如服务器、服务和工具。was提供了可靠、健壮和灵活的软件。我们在解决JS跨域的时候使用了JSONP模式,采用该种模式可有效解决JS跨域问题。JSONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题4。在服务器选择方面,我们用了服务器集群模式,在连接方面,我们采用了连接池技术,但是我们并没有完全采用连接包,我们重写了某些方面,比如释放等问题,在普通的连接池上并不是很明显。我们的定时器采
18、用的quartz,quartz可以有效的触发定时任务,通过简单的配置文件,对时间和定时任务的配置,quartz就能在配置的时间启动该任务。我们有以下模块:Banger-framework-core:Banger-framework-component:Banger-framework-dao:Banger-framework-sql:Banger-framework-util:Banger-framework-web:Banger-product-core:Banger-product-monitor:Banger-product-permission:Banger-product-permi
19、ssionIntf:Banger-biz-config:Banger-biz-configIntf:Banger-biz-desktop:Banger-biz-ecm:Banger-biz-ecmIntf:Banger-biz-generate:Banger-biz-system:Banger-biz-systemIntf:Banger-biz-talk:Banger-biz-talkIntf:Banger-biz-video:Banger-biz-videoIntf:Banger-common:Bannger-domain:Banger-esb:Banger-extra-interface:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 录音 录像 管理 平台 设计 实现
链接地址:https://www.31doc.com/p-3950073.html