<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/iot\_terminal\_management" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>
这一节是使用java连接MQTT服务器,然后订阅主题获取所有设备数据,
然后通过Druid连接池把数据写入MySQL数据库.
注: java连接MQTT和Android连接MQTT是一样的.
java使用Druid连接池连接数据库可参考提供的MySQL基础开源教程.
java代码使用IntelliJ IDEA软件打开.
1,新建数据库
2,数据库名字 historical_data,编码格式 utf8
3,在historical_data数据库里新建表格
4,添加几个字段
字段id, 类型是int, 去掉允许空值, 设置为自增, 然后设置为主键;
字段data_time, 类型设置为timestamp;(作为数据存储的时间)
字段client_id, 类型设置为varchar;(记录设备的id)
字段temperature, 类型设置为float;(存温度数据)
字段humidity, 类型设置为float;(存湿度数据)
5,点击保存 表格名字为 humiture_table
可以打开表看下,现在是没有数据
咱现在的数据库只能使用root账号在本机进行访问,
咱新建一个用户,让其可以在其它电脑上访问咱这个数据库
只选择historical_data这个数据库, 然后后面只选择上增删改查,刷新就可以了
注意哈,为了数据库的安全,一般数据库不能对外开放,咱测试的时候可以这样子.
然后点击保存
进来了
如果版本小于1.8则需要安装(只需要安装,不需要配置环境变量)
安装完以后不需要配置环境变量,只需要在软件中设置JDK路径
如果设备的数据格式和我的不一样,用户根据自己的数据格式修改
我的设备上报数据的格式是 {"data":"sensor","type":"th","temperature":45,"humidity":23}
如果已经安装了别的JDK版本,这个版本的可以只安装,不配置环境变量,
后面有说明怎么指定JDK运行. 记得往后看哈!
https://cloud.tencent.com/developer/article/1397720
编辑里面的内容如下(MqttDataToMySQL.jar 就是jar包的名字)
@echo off
start javaw -jar MqttDataToMySQL.jar
exit
C:\java8\jdk1.8.0.131 为JDK的安装路径
@echo off
set JAVA_HOME=C:\java8\jdk1.8.0.131
set CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOMe%\lib\tools.jar;
set Path=%JAVA_HOME%\bin;
start javaw -jar MqttDataToMySQL.jar
exit
MQTT使用的是paho.client.mattv3-1.2.0的jar包
数据库除了基本的jabc连接器以外,使用了阿里巴巴的开源连接池 druid
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有