## 基于SpringBoot框架搭建的物联网数据采集系统服务器端
DAQ-IoT-SSM的升级版
#### 2020-7-15 更新内容
* 1.前端页面完全重构
* 使用elements-ui重新编写所有前端页面,优化视觉感受。
* 完全抛弃JQuery,使用vue.js + axios实现前后端交互,优化交互逻辑和用户体验。
* 2.API优化
* 取消虚拟路径
* 添加部分API,如根据时间段查询数据、条件查询传感器。
* 过时原有按时间段查询异常的API。
#### 2020-05-14 更新内容
* 1.框架迁移到SpringBoot+MyBatis,相比于SSM版的项目大大减少了xml配置,仅在application.yml文件中配置了少量信息
* 2.添加Redis缓存,在以下部分提供缓存支持:
* 当查询单个Gateway、Sensor、SensorClassify时使用查询缓存,从数据库查询过的数据会存入缓存,提高查询效率
* 传感器提交Data数据时使用添加缓存,不直接操作数据库,而是将Data添加到Redis中形成缓存队列,提高并发效率
* 将用户登录信息不直接存入session,而是存入Redis缓存,以实现分布式session共享
* 3.提交Data数据的异步任务支持。通过线程池实现异步地将Redis中缓存队列添加到数据库,减少数据库的写入压力。
* 4.nginx与tomcat集群支持:
* 通过SpringBoot的内置Tomcat方便了Tomcat集群的部署
* 提供查看IP和端口API方便进行nginx反向代理和负载均衡的部署和测试
* 分布式session共享避免了集群环境下用户登录信息失效的问题
* 5.测试页面优化
* 模拟传感器数据提交页面支持批量数据提交
* 按时间段查询传感器异常页面不再需要输入时间戳而是通过控件输入日期
* 修复了前端页面显示时间与数据库存储时间不一致的bug
### 注意:
* 前端页面仅供测试,本系统主要是为底层传感网络提供数据提交和管理的平台。
* 默认请求路径 http://localhost:8080/ 8080为SpringBoot内置Tomcat端口,可在application.yml文件中修改。
* 以下所有API除测试、用户相关的/login、/info、/exit之外,都会被登录拦截器所拦截,调用其他API需要先登录一个用户。
* 本系统除下载部分外,所有响应数据均为同样的JSON格式。
* 格式:{"status" : true/false, "message" : "description...", "data": data }
* status: 表示请求是否成功。
* message: 对请求的描述,如果响应失败,描述失败原因。
* data: 请求成功时响应的数据,为Object类型,可以是任何类型的数据。data的具体json的格式可参考domain包中的实体类结构。
### 提供API
#### 0. 测试
|功能|请求uri|请求方式|请求参数|
|----|------|--------|-------|
|测试|/api/home|GET|无|
|查看IP和端口|/api/address|GET|无|
#### 1. 用户相关
|功能|请求uri|请求方式|请求参数|
|----|------|--------|-------|
|用户登录|/api/user/login|POST|User对象|
|查看登录用户|/api/user/info|GET|无|
|退出登录|/api/user/exit|GET|无|
|用户注册|/api/user/regist|POST|User对象|
|修改密码|/api/user/password|POST|User对象、新密码|
|修改基本信息|/api/user/modify|POST|User对象|
#### 2. 网关相关(restful风格)
|功能|请求uri|请求方式|请求参数|
|----|------|--------|-------|
|添加网关|/api/gateway|POST|Gateway对象|
|更新网关|/api/gateway|PUT|Gateway对象|
|删除网关|/api/gateway/{id}|DELETE|id值|
|查询网关|/api/gateway/{id}|GET|id值|
|查询所有网关|/api/gateway|GET|无|
|关联查询网关下的传感器|/api/gateway?withSensors=true|GET|布尔值|
#### 3. 传感器分类相关(restful风格)
|功能|请求uri|请求方式|请求参数|
|----|------|--------|-------|
|添加传感器分类|/api/classify|POST|SensorClassify对象|
|查询传感器分类|/api/classify/{id}|GET|id值|
|查询所有传感器分类|/api/classify|GET|无|
|关联查询传感器分类下的传感器|/api/classify?withSensors=true|GET|布尔值|
|查询某一网关下的所有传感器分类|/api/classify/gateway/{id}|GET|网关id值|
#### 4. 传感器相关(restful风格)
|功能|请求uri|请求方式|请求参数|
|----|------|--------|-------|
|添加传感器|/api/sensor|POST|Sensor对象|
|更新传感器|/api/sensor|PUT|Sensor对象|
|删除传感器|/api/sensor/{id}|DELETE|id值|
|查询传感器|/api/sensor/{id}|GET|id值|
|查询所有传感器|/api/sensor|GET|无|
|查询某一分类所有传感器|/api/sensor/classify/{id}|GET|分类id|
|查询某一网关所有传感器|/api/sensor/gateway/{id}|GET|网关id|
|根据网关和分类条件查询传感器|/api/sensor/gateway-classify|GET|网关id、分类id|
#### 5. 传感器数据相关
|功能|请求uri|请求方式|请求参数|
|----|------|--------|-------|
|提交一个数据|/api/data/receive|POST|Data对象的json格式字符串|
|提交多个数据|/api/data/receiveAll|POST|Data对象数组的json格式字符串|
|查询一个传感器的所有数据|/api/data/sensor/{id}|GET|传感器id|
|根据时间范围查询一个传感器的数据|/api/data/sensor|GET|传感器id、起始时间、结束时间|
#### 6. 异常相关
|功能|请求uri|请求方式|请求参数|
|----|------|--------|-------|
|查询网关异常|/api/gatewayException|GET|无|
|查询网关异常(分页)|/api/gatewayException/page/{page}|GET|页码|
|查询一段时间内的网关异常(过时)|/api/gatewayException/{timetamp}|GET|字符串格式:"时间戳1@时间戳2"|
|查询一段时间内的网关异常|/api/gatewayException/time|GET|起始时间、结束时间|
|查询传感器异常|/api/sensorException|GET|无|
|查询传感器异常(分页)|/api/sensorException/page/{page}|GET|页码|
|查询一段时间内的传感器异常(过时)|/api/sensorException/{timetamp}|GET|字符串格式:"时间戳1@时间戳2"|
|查询一段时间内的网关异常|/api/sensorException/time|GET|起始时间、结束时间|
#### 7. 下载相关
|功能|请求uri|请求方式|请求参数|
|----|------|--------|-------|
|下载测试文件|/api/file/test|GET|无|
|下载所有网关的xls表格|/api/file/gateway|GET|无|
|下载所有传感器的xls表格|/api/file/sensor|GET|无|
|下载一个网关及其所有传感器的xls表格|/api/file/gateway/{id}|GET|网关id|
|下载一个传感器及其所有数据的xls表格|/api/file/sensor/{id}|GET|传感器id|
#### 其他
由于目前所有传感器提交的数据都是存在同一个表中,项目运行时间长了之后单表数据量会非常大,影响数据库效率,以后考虑加入分库分表功能。
没有合适的资源?快使用搜索试试~ 我知道了~
毕业设计&课设-基于SpringBoot框架搭建的物联网数据采集系统服务器端.zip

共94个文件
java:48个
html:25个
xml:8个

1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 200 浏览量
2024-06-10
09:12:27
上传
评论
收藏 634KB ZIP 举报
温馨提示
该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。
资源推荐
资源详情
资源评论


















收起资源包目录





























































































































共 94 条
- 1
资源评论


毕业小助手
- 粉丝: 2791
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 2023年3月三级网络笔试题.doc
- 基于灰狼算法的局部阴影遮挡下MPPT实现及仿真分析
- 基于YOLOv8的公共场所六分类危险武器检测系统:Python源码+Pyqt6界面+数据集 - 数据集
- COMSOL仿真中压力声学与固体力学模块的关键技术解析及应用实例
- 基于阿基米德优化算法的自定义路径规划:鲁棒性强、简单易实现、适应性广的应用解析 - Python 教程
- 光子学领域的Comsol光子晶体光纤与SPR PCF传感器及其谷自旋分离技术的应用研究 几何相位缺陷态
- 基于改进自适应蚁群算法MAACO的多智能体路径规划及其MATLAB实现
- 二自由度机械臂的RBF自适应控制与传统滑模控制对比研究
- LTC3542同步Buck变换器:高效电源管理芯片设计与应用 · Cadence 必备版
- 基于西门子1200与博图v16版本的锅炉控制系统:PLC程序、HMI组态画面与相关清单 · 工业自动化 说明
- 基于COMSOL的涂层剥离瞬态仿真与多体动力学接触粘附罚函数研究 多体动力学
- 分布式驱动电动汽车七状态估计模型:基于CKF与Dugoff轮胎力计算的联合仿真研究 (07月28日)
- 基于Carsim与Simulink联合仿真模型的车辆换道轨迹规划与跟踪模型实践
- 三相PWM整流器滑模整流控制(外环)的原理与应用研究
- Amesim在HEV热管理和电池热管理中的应用及大厂培训模型解析
- Qt5开发的西门子S7通信数据上传验证程序:支持SQL Server与MySQL的双数据库生产线追溯系统
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
