# mqtt
**Repository Path**: pesking/mqtt
## Basic Information
- **Project Name**: mqtt
- **Description**: 封装MQTT,让使用者更加简单
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2023-11-03
- **Last Updated**: 2025-12-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# mqtt
#### 介绍
封装MQTT,让使用者更加简单
1) 增加自动重连功能
2) 增加订阅监听器
3) 增加静态发布方法
#### 安装教程
1. 增加仓库配置
```
pesking_public
pesking_public
http://www.peskingsoft.com/repository/internal
true
true
```
2. 增加包引入
```xml
com.pesking.framework
mqtt
1.0-SNAPSHOT
```
#### 使用说明
1. 配置连接地址
```yaml
spring:
mqtt:
username: xxx
password: xxx
clientId: xxxx
server-addrs: tcp://192.168.1.1:1883
```
clientId未配置,默认读取spring.application.name
spring.application.name未配置,会动态生成唯一ID
2. 增加订阅监听器
```java
package com.pesking.mqtt.test;
import com.pesking.mqtt.MqttSubscribeListener;
import com.pesking.mqtt.domain.Qos;
import org.springframework.stereotype.Component;
@Component
public class Test2MqttSubscribeListener implements MqttSubscribeListener {
@Override
public String getTopic() {
return "test";
}
@Override
public Qos qos() {
return Qos.AT_MOST_ONCE;
}
@Override
public void handle(String message) {
System.out.println("Test2MqttSubscribeListener我收到消息了,内容为:" + message);
}
}
```
3. 发布消息
```java
MQTTManage.publish(Qos.AT_LEAST_ONCE, false, "test", msg, new MessageSendCallback() {
@Override
public void handle(Qos qos, boolean retained, String topic, Message pushMessage, boolean success, Throwable throwable) {
System.out.println("messageSendCallback 发送完成");
}
});
```