- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
基于WiFi的无线监控的系统服务端的设计与实现的中期报告
1.引言
现代社会中,监控已经成为了具有广泛用途的系统,在人们的日常生活中,常常可以见到各种各样的监控设备。随着技术的发展和进步,无线监控系统已经成为了商业和安全领域中使用相对广泛的一种监控方式。
本项目是一款基于WiFi的无线监控系统,可以通过智能手机或电脑等设备进行观看视频,控制设备等操作。针对这一系统,本文对其服务端进行了设计与实现,并将详细介绍系统的需求分析、技术选型以及实现细节。
2.需求分析
2.1功能需求
-前端展示:提供视频流、设备状态等前端展示功能;
-设备管理:提供设备添加、修改、删除等设备管理功能;
-视频流录制:通过触发检测或手动控制,实现视频流的录制功能;
-视频流存储:将录制的视频流进行存储;
-视频流回放:提供历史视频流回放功能。
2.2非功能性需求
-安全性:系统需要保证数据的安全性,包括用户身份认证、数据加密等;
-可靠性:系统需要保证高可靠性,避免视频流中断和视频数据丢失;
-时效性:系统需要保证实时性,保证视频流的实时展现;
-可扩展性:在需要的时候,支持对系统进行水平或垂直扩展。
3.技术选型
3.1前端技术
前端采用的是Vue.js框架进行开发,同时采用Element-UI作为UI库,以及Axios库用于向后端发送请求。Vue.js框架简单易用,且有助于构建可维护和可拓展的用户界面。
3.2后端技术
后端采用的是SpringBoot框架进行开发,数据库使用MySQL,并使用MyBatis作为数据库访问层框架。同时使用Shiro框架提供用户认证和授权的功能,这些技术的整合为系统的开发提供了便利。
3.3视频流技术
视频流编解码采用的是H.264标准,可以在实现良好的压缩比的同时保证视频质量。视频流的传输通过RTSP协议进行,使得在网络带宽较小的情况下,仍能保证流畅的播放。
4.设计实现
4.1数据库设计
系统数据库包含了设备表和视频表两个主要表,其中设备表用于记录所有设备的信息,视频表用于存储所有录制的视频流信息。
设备表设计如下:
|字段|类型|描述|
|---|---|---|
|id|int|设备ID|
|name|varchar(255)|设备名称|
|ip|varchar(50)|设备IP地址|
|port|int|设备端口号|
|username|varchar(50)|设备用户名|
|password|varchar(50)|设备密码|
|status|int|设备状态(0表示离线,1表示在线)|
视频表设计如下:
|字段|类型|描述|
|---|---|---|
|id|int|视频ID|
|device_id|int|设备ID|
|start_time|datetime|视频流开始时间|
|end_time|datetime|视频流结束时间|
|url|varchar(255)|视频流URL|
|path|varchar(255)|视频流存放路径|
4.2接口设计
系统在后端提供了RESTfulAPI接口,以便于前端进行与服务端数据传输或交互,以下是部分接口URL及功能描述。
-GET/device:获取设备列表;
-GET/device/{id}:获取指定设备的信息;
-POST/device:新增设备;
-PUT/device/{id}:修改设备信息;
-DELETE/device/{id}:删除设备;
-POST/device/{id}/record:开启指定设备的录制;
-POST/device/{id}/record/stop:停止指定设备的录制;
-GET/video:获取录制的视频流列表;
-GET/video/{id}:获取指定视频流的详细信息;
-GET/video/{id}/play:获取指定视频流的URL用于播放;
-GET/video/{id}/download:下载指定视频流。
4.3实现细节
服务端主要被分为两个模块,即设备管理和视频管理。
设备管理模块主要实现了设备的增删改查等功能,并提供了如下的接口:
-/device:GET方法,获取设备列表;
-/device/{id}:GET方法,获取指定设备的信息;
-/device:POST方法,新增设备;
-/device/{id}:PUT方法,修改设备信息;
-/device/{id}:DELETE方法,删除设备。
文档评论(0)