初探物联网协议之MQTT
来源:互联网 发布:php curl exec 不输出 编辑:程序博客网 时间:2024/05/17 15:05
1.什么是MQTT
https://zhuanlan.zhihu.com/p/20888181
2.MQTT的框架模式
3.MQTT的Java(paho)实现之Hello World
服务器端:
import java.util.Arrays;import org.eclipse.paho.client.mqttv3.IMqttDeliveryToken;import org.eclipse.paho.client.mqttv3.MqttCallback;import org.eclipse.paho.client.mqttv3.MqttClient;import org.eclipse.paho.client.mqttv3.MqttConnectOptions;import org.eclipse.paho.client.mqttv3.MqttException;import org.eclipse.paho.client.mqttv3.MqttMessage;import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;public class MTest {public static void main(String[] args) {int qos = 2;//设置服务质量String broker = "tcp://*:1883";MemoryPersistence persistence = new MemoryPersistence();try {MqttClient sampleClient = new MqttClient(broker, "mtest",persistence);MqttConnectOptions connOpts = new MqttConnectOptions();connOpts.setCleanSession(true);System.out.println("Connecting to broker: " + broker);sampleClient.connect(connOpts);sampleClient.subscribe("backTest");//订阅主题System.out.println("Connected");System.out.println("Publishing message: hello i am mtest");//发布消息MqttMessage message = new MqttMessage("Publishing message: hello i am mtest".getBytes());message.setQos(qos);sampleClient.publish("MQTT Examples", message);System.out.println("Message published");sampleClient.setCallback(new MqttCallback() { @Override public void connectionLost(Throwable cause) { //Called when the client lost the connection to the broker } @Override public void messageArrived(String topic, MqttMessage message) throws Exception { System.out.println(topic + ": " + new String(message.getPayload(),"UTF-8")); } @Override public void deliveryComplete(IMqttDeliveryToken token) {//Called when a outgoing publish is complete } });} catch (MqttException me) {System.out.println("reason " + me.getReasonCode());System.out.println("msg " + me.getMessage());System.out.println("loc " + me.getLocalizedMessage());System.out.println("cause " + me.getCause());System.out.println("excep " + me);me.printStackTrace();}}}
客户端:
import java.util.Arrays;import org.eclipse.paho.client.mqttv3.IMqttDeliveryToken;import org.eclipse.paho.client.mqttv3.MqttCallback;import org.eclipse.paho.client.mqttv3.MqttClient;import org.eclipse.paho.client.mqttv3.MqttConnectOptions;import org.eclipse.paho.client.mqttv3.MqttException;import org.eclipse.paho.client.mqttv3.MqttMessage;import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;public class STest {public static void main(String[] args) {String broker = "tcp://*:1883";//另一端地址MemoryPersistence persistence = new MemoryPersistence();try {final MqttClient sampleClient = new MqttClient(broker, "stest" , persistence);MqttConnectOptions connOpts = new MqttConnectOptions();connOpts.setCleanSession(true);System.out.println("Connecting to broker: " + broker);sampleClient.connect(connOpts);sampleClient.subscribe("MQTT Examples");//订阅主题System.out.println("Connected");sampleClient.setCallback(new MqttCallback() { @Override public void connectionLost(Throwable cause) { //Called when the client lost the connection to the broker } @Override public void messageArrived(String topic, MqttMessage message) throws Exception { System.out.println("i Got the message:"); System.out.println(topic + ": " + new String(message.getPayload(),"UTF-8")); System.out.println("i Send the message:"); MqttMessage message1 = new MqttMessage("Publishing message:hello , i am stest ".getBytes()); message1.setQos(2); sampleClient.publish("backTest", message1); System.out.println("Message published"); } @Override public void deliveryComplete(IMqttDeliveryToken token) {//Called when a outgoing publish is complete } });} catch (MqttException me) {System.out.println("reason " + me.getReasonCode());System.out.println("msg " + me.getMessage());System.out.println("loc " + me.getLocalizedMessage());System.out.println("cause " + me.getCause());System.out.println("excep " + me);me.printStackTrace();}}}
0 0
- 初探物联网协议之MQTT
- 海鑫智圣:物联网漫谈之MQTT协议
- 海鑫智圣:物联网漫谈之MQTT协议
- 物联网MQTT协议
- MQTT 物联网协议
- MQTT 物联网连接协议
- 物联网传输协议MQTT
- 物联网接入协议-MQTT
- 物联网通信协议之MQTT
- MQTT-新一代物联网协议
- 物联网传输协议MQTT研究
- 网络抓包学MQTT物联网协议
- MQTT协议在物联网中的应用
- AllJoyn物联网协议------初探
- 物联网核心之MQTT(一)
- 物联网核心之MQTT移植
- 玩转物联网之MQTT
- 物联网协议比较 MQTT CoAP RESTful/HTTP XMPP
- mfc按钮响应双击消息
- 你真的了解iOS打包么?下面的四个问题,只有20%的人能回答出来。
- 汉诺塔问题
- Unity3D 大型游戏 最后一站 源码 部分重点 英雄释放技能(15)
- 自定义ClassLoader
- 初探物联网协议之MQTT
- MVP模式&简单实例
- Android国际化
- 我正在做的毕业设计,半成品,持续更新中!
- hadoop-hdfs-文件工具类(Java)
- Android 几秒钟点击次数 触发事件
- 修该C++项目的名称
- robot framework环境搭建
- html的相对路径和绝对路径