!1 Update README.md

Merge pull request !1 from gitee-agent/N/A
This commit is contained in:
zhitan-ems 2025-07-21 10:52:15 +00:00 committed by Gitee
commit 4863754133
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F

View File

@ -1 +1,60 @@
MQTT网关
# Zhitan-Gateway 项目简介
Zhitan-Gateway 是一个基于 Java 的网关服务,主要功能是接收 MQTT 协议的数据,并将这些数据写入时间序列数据库 InfluxDB 或关系型数据库中。该项目适用于物联网IoT场景下的数据采集和处理。
## 技术栈
- Spring Boot
- MQTT
- InfluxDB
- MyBatis Plus
- Redis
- Druid 数据库连接池
## 主要功能
- 通过 MQTT 协议接收数据并进行处理。
- 支持将数据写入 InfluxDB 或其他数据库。
- 配置 Druid 数据库连接池以管理主从数据库连接。
- 提供 Redis 缓存服务以提升数据处理效率。
## 模块说明
- `MQTTGatewayApplication.java`Spring Boot 启动类。
- `MqttConfig.java``MqttInboundConfig.java`:负责 MQTT 的连接和消息接收配置。
- `InfluxdbConfig.java``InfluxdbRepository.java`:负责 InfluxDB 的连接和数据写入。
- `DataServiceImpl.java`:实现数据处理逻辑,包括接收 MQTT 消息并写入数据库。
- `DruidConfig.java``DruidProperties.java`:配置 Druid 数据库连接池。
- `RedisConfig.java``RedisCache.java`:配置 Redis 缓存并提供缓存操作方法。
- `MyBatisPlusConfig.java`:配置 MyBatis Plus 的拦截器。
## 使用说明
### 配置
确保在 `application.yml``application-dev.yml` 中配置以下内容:
- MQTT 服务器连接信息broker-url, username, password
- InfluxDB 连接参数host, org, bucket, token
- Redis 配置信息
- Druid 数据源配置
### 启动
运行 `MQTTGatewayApplication.java` 中的 `main` 方法启动服务。
### 数据处理
当 MQTT 消息到达时,`MqttInboundConfig` 会监听指定的 Topic并通过 `MqttMessageHandler` 处理数据。数据将根据配置写入 InfluxDB 或其他数据库。
## 依赖管理
使用 Maven 进行依赖管理,核心依赖包括:
- Spring Boot Starter
- MQTT 支持库
- InfluxDB Java 客户端
- MyBatis Plus
- Druid 数据库连接池
- Redis 客户端
## 许可证
本项目遵循 MIT 许可证,详见 [LICENSE](LICENSE) 文件。
## 注意事项
- 本项目需要依赖 MQTT Broker 和 InfluxDB/MySQL 等数据库,请确保相关服务已启动。
- 配置文件中需根据实际环境修改配置,特别是数据库和 MQTT 的连接参数。
如需进一步了解,请查阅源码或联系项目维护者。