java和mqtt的那些事(一)
来源:互联网 发布:linux启动stage 编辑:程序博客网 时间:2024/05/21 17:22
如果使用java代码和mqtt进行连接话需要引入jar包,pom.xml文件中如下所示:
<dependency> <groupId>org.eclipse.paho</groupId> <artifactId>org.eclipse.paho.client.mqttv3</artifactId> <version>1.1.0</version></dependency>
在paho中发布消息和订阅主题都是通过MqttClient类来实现的:
org.eclipse.paho.client.mqttv3
Class MqttClient
- java.lang.Object
- org.eclipse.paho.client.mqttv3.MqttClient
- All Implemented Interfaces:
- IMqttClient
- 实例化这种类有两种方法,其实只有一种方法那就是:
public MqttClient(String serverURI, String clientId, MqttClientPersistence persistence) throws MqttException { aClient = new MqttAsyncClient(serverURI, clientId, persistence);}
public MqttClient(String serverURI, String clientId) throws MqttException { this(serverURI,clientId, new MqttDefaultFilePersistence());}
聪明的你就会发下真的是一种方法不过第二种只是默认的创建了MqttDefaultFilePersistence这个类的实例对象,这个类对象呢又是MqttClientPersistence类的子类总之差不多。那么这个类又是干什么的呢,它是用来存储信息的,总的来说不管是客户端还是服务端发送信息的时候都需要先把信息存储起来,因为不存储起来在传递过程中可能会出现丢失和失败,而这个类就是用来存储信息使得发送信息更加可靠。- 之后对于服务端就是直接连接了。而对于客户端还需要如下操作:
- 创建:MqttConnectOptions这个类对象了,为什么呢?因为这个类对象是用来保存你对连接的设置选项的,有什么用户账号和密码,是否清楚Session,是否自动连接,连接超时的时长等等。
然后设置回掉函数类,回掉函数是主题发布消息的时候,客户端这边会使用到的类,这个类需要实现MqttCallback,然后实现三个方法MqttConnectOptions options = new MqttConnectOptions();
public void connectionLost(Throwable cause)
public void deliveryComplete(IMqttDeliveryToken token)
public void messageArrived(String topic, MqttMessage message) throws Exception
阅读全文
0 0
- java和mqtt的那些事(一)
- java与mqtt的那些事(二)
- MQTT client JAVA 和 MQTT broker
- Java 和 HTTP 的那些事(一) 模拟 HTTP 请求
- Java多线程那些事(一)
- Java日期和时间的那些事
- Java实习面试的那些事(一)
- MQTT的学习研究(一)MQTT学习网站
- 前端和设计的那些事(一)
- AutoLayout的那些事(一)
- Java的那些坑(一)
- 精述IBM的MQTT协议和MQTT-S协议
- java关于javadoc的那些小技巧和你需要知道的地方(一)
- 聊聊java那些事(一)--并发
- Flask--MQTT的应用(一)
- MQTT协议的简单介绍和服务器的安装(一)
- MQTT协议的简单介绍和服务器的安装(一)
- java的那些事:实现学生信息录入和查看
- sql语句
- 关于SD卡的
- 前台使用ajax 调用action方法,返回一个对象List集合的json
- Spark Shuffle性能调优
- 带有动态效果得返回顶部
- java和mqtt的那些事(一)
- three.js 01-01 之基本骨架
- STM32学习之:事件标志组
- XML_概述,DOM4J解析器,Pull解析器,DOM4J增删改
- hdu 6138
- 2017/10/16一个新项目上线过程中所记录的
- Python正则表达式详解
- 任学堂说科技:你所不知道的人工智能发展史,未来的方向志在何方
- 利用python保存网页文本