OneNET物联网平台09 IDEA运行java项目连接MQ接收消息

1、下载并导入demo工程

demo工程:https://open.iot.10086.cn/doc/mq/images/tools/OneNET-MQ-demo-20200119.zip

将demo工程下载并解压,然后打开IDEA,将其导入:

菜单FileOpen...打开导入弹窗,选择解压的文件夹,点击OK,出现下图所示弹窗,点击Trust Project

OneNET物联网平台09 IDEA运行java项目连接MQ接收消息

等待其下载maven依赖包

2、配置demo工程

修改com.onenet.mq包下的MqClient.java类,下面两张图中的代码:

OneNET物联网平台09 IDEA运行java项目连接MQ接收消息

OneNET物联网平台09 IDEA运行java项目连接MQ接收消息

比如我的,根据在Onenet平台创建的消息队列MQ实例,将代码写成这种:

//用户自定义合法的UTF-8字符串,可为空
String clientID = "yuyun-mq";
String serverURI = "ssl://183.230.40.96:8883";
//MQ实例名称
String userName = "yuyun-mq-test";

//topic名称
String mqTopic = "yuyun-topic-test";
// 订阅名称
String mqSub = "yuyun-topic-data";
// MQ实例名称
String userName = "yuyun-mq-test";
// MQ实例的 access_key
String accessKey = "fFjnCBIQ5dhZg2wtI6306NoxT17oA1DWraGVhrzKf0A=";

//版本号,无需修改
String version = "2018-10-31";
//通过MQ实例名称访问MQ
String resourceName = "mqs/" + userName;
String expirationTime = System.currentTimeMillis() / 1000 + 100 * 24 * 60 * 60 + "";
//签名方法,支持md5、sha1、sha256
String signatureMethod = "md5";
String password = null;

注:如需手动回复puback,请将MqClient.java中第25行manualAcks设置为true,并在PushCallback类中的messageArrived的接口中手动回复。

private boolean manualAcks = false;

3、运行demo

项目配置完成之后,就在MqClient.java类的最后面有一个main方法,直接运行

OneNET物联网平台09 IDEA运行java项目连接MQ接收消息

这个时候,运行linux平台的模拟设备,控制台就会收到设备传给MQ的数据,MQ再发送到项目控制台:

OneNET物联网平台09 IDEA运行java项目连接MQ接收消息

收到的数据中有一个id字段,它就是消费位置,我们可以根据这个id去控制台修改订阅的消费位置:

OneNET物联网平台09 IDEA运行java项目连接MQ接收消息

本文章来源于互联网,如有侵权,请联系删除!原文地址:OneNET物联网平台09 IDEA运行java项目连接MQ接收消息