## 基于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个
需积分: 5 0 下载量 82 浏览量
2024-03-15
21:29:46
上传
评论
收藏 633KB ZIP 举报
温馨提示
Java_Web开发领域的几个共同特点,它们主要围绕使用SSM框架,工具源码,适合毕业设计、课程设计作业,所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答! Java_Web开发领域的几个共同特点,它们主要围绕使用SSM框架,工具源码,适合毕业设计、课程设计作业,所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答! Java_Web开发领域的几个共同特点,它们主要围绕使用SSM框架,工具源码,适合毕业设计、课程设计作业,所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
资源推荐
资源详情
资源评论
收起资源包目录
基于SpringBoot框架搭建的物联网数据采集系统服务器端.zip (94个子文件)
content
pom.xml 3KB
src
test
java
com
my
iot
BaseTest.java 290B
log
LoggerTest.java 621B
main
resources
iot.sql 11KB
static-old
js
dateformat.js 1KB
echarts.min.js 753KB
jquery-3.4.1.min.js 86KB
html
regist.html 507B
gateway.html 5KB
changePassword.html 430B
exception.html 3KB
changeBasicInfomation.html 412B
download.html 1KB
login.html 355B
sensor.html 6KB
sensor_classify.html 3KB
data_sensor.html 3KB
network.html 4KB
data_post.html 3KB
index.html 2KB
static
js
dateformat.js 1KB
echarts.min.js 753KB
html
regist.html 10KB
basicInformation.html 9KB
gateway.html 15KB
changePassword.html 10KB
exception.html 13KB
download.html 11KB
login.html 8KB
sensor.html 22KB
data-post.html 11KB
data-sensor.html 14KB
network.html 10KB
index.html 10KB
application.yml 381B
java
com
my
iot
schedule
AsyncTaskService.java 2KB
mapper
GatewayExceptionMapper.java 1KB
UserMapper.java 902B
SensorClassifyMapper.java 1KB
GatewayMapper.java 1KB
SensorExceptionMapper.java 1KB
SensorMapper.java 2KB
DataMapper.java 987B
controller
FileController.java 18KB
DataController.java 6KB
UserController.java 4KB
GatewayExceptionController.java 2KB
SensorExceptionController.java 2KB
GatewayController.java 3KB
SensorClassifyController.java 2KB
HomeController.java 1KB
SensorController.java 6KB
service
SensorService.java 568B
GatewayExceptionService.java 434B
GatewayService.java 384B
DataService.java 401B
UserService.java 203B
SensorExceptionService.java 428B
SensorClassifyService.java 359B
impl
SensorServiceImpl.java 2KB
SensorExceptionServiceImpl.java 2KB
UserServiceImpl.java 941B
SensorClassifyServiceImpl.java 2KB
GatewayServiceImpl.java 3KB
DataServiceImpl.java 2KB
GatewayExceptionServiceImpl.java 2KB
IoTSpringBootApplication.java 322B
util
Md5Util.java 2KB
domain
PageBean.java 2KB
Sensor.java 4KB
Gateway.java 2KB
Result.java 934B
SensorException.java 2KB
SensorClassify.java 1KB
GatewayException.java 2KB
User.java 2KB
Data.java 2KB
config
WebAppConfig.java 1KB
ServerConfig.java 1004B
StringToDateConverter.java 1KB
interceptor
LoginInterceptor.java 2KB
IoT-SpringBoot.iml 80B
.idea
jarRepositories.xml 1KB
uiDesigner.xml 9KB
sqldialects.xml 209B
$CACHE_FILE$ 1KB
vcs.xml 180B
IoT-SpringBoot.iml 80B
misc.xml 616B
DAQ-IoT-SpringBoot.iml 80B
compiler.xml 818B
.gitignore 176B
encodings.xml 308B
README.md 7KB
共 94 条
- 1
资源评论
独处东汉
- 粉丝: 377
- 资源: 822
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功