您现在的位置是:首页 > 文章详情

mica-mqtt 2.4.5 发布,MqttClientSubscribe 支持自定义序列化

日期:2025-05-08点击:3

一、前言

Dromara mica-mqtt 2.4.5 正式版已经发布,请注意从 2.4.x 版本开始将 maven groupId 迁移到了 org.dromara.mica-mqtt,包名切换到了 org.dromara,其它使用上均和老版本保持一致。强烈推荐 大家尽快升级到新的 2.4.x

另由于老的文档散落在各个模块,不方便查看,我们新增了文档站:https://mica-mqtt.dromara.org

二、更新记录

v2.4.5 - 2025-05-06

  • mica-mqtt-client-spring-boot-starter 的 @MqttClientSubscribe 注解支持自定义反序列化。
  • 优化代码 Spring Boot Client 可以自定义 MqttClientSubscribeDetector github #90 感谢 @galaxy-sea 贡献
  • 升级 mica-net 到 1.1.6,解决 eclipse paho mqtt websocket client 连接 mica-mqtt server 报错
  • 依赖调整,减少 example 示例项目的安全提示
  • 🐛解决服务端重启时 client有消息发送,导致 client 无法正常重连 gitee #IC4DWT 感谢 @wtjperi2003 反馈
  • 🐛同步 netty mqtt codec Fix the assignment error of maxQoS parameter in ConnAck Properties

v2.4.4 - 2025-04-13

  • mica-mqtt-server,更好的兼容 Android 环境。github #81 感谢 @KittenBall 的反馈和联调测试。

三、重点说明

在 mica-mqtt 的 2.4.5 版本中,对 mica-mqtt-client-spring-boot-starter 的 @MqttClientSubscribe 注解添加了反序列化属性,默认为 json 序列化。用户可自行实现 MqttDeserializer 接口自定义序列化。另外 mica-mqtt 2.4.5 还对注解订阅进行了优化,支持了根据类型的参数绑定,规则如下:

 /** * * @param topic mqtt topic * @param message mqtt 原始消息 * @param data 用户自定义的 java bean */ @MqttClientSubscribe( value = "/test/json", deserialize = MqttJsonDeserializer.class // 2.4.5 开始支持 自定义序列化,默认为 MqttJsonDeserializer json 序列化 ) public void testJson(String topic, MqttPublishMessage message, TestJsonBean data) { // 2.4.5 开始支持,支持 2 到 3 个参数,字段类型映射规则如下 // String 字符串会默认映射到 topic, // MqttPublishMessage 会默认映射到 原始的消息,可以拿到 mqtt5 的 props 参数 // byte[] 会映射到 mqtt 消息内容 payload // ByteBuffer 会映射到 mqtt 消息内容 payload // 其他类型会走序列化,确保消息能够序列化,默认为 json 序列化 logger.info("topic:{} json data:{}", topic, data); } 

四、使用文档

原文链接:https://www.oschina.net/news/348677/mica-mqtt-2-4-5-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章