Qt 与 Java ActiveMQ和ProtoBuf对接(自描述消息)

该博客介绍了如何使用Java和Qt程序通过ActiveMQ的两个队列A和B进行数据通信。Java端(J)发送数据到A队列,Qt端(Q)从A队列接收并发送数据到B队列,反之亦然。由于ProtoBuf不包含自身类型描述,通过定义自描述协议消息解决反序列化问题,允许在消息中引用消息类型以便正确反序列化。
摘要由CSDN通过智能技术生成

思维逻辑描述

程序逻辑大概是这样的,Java端为一个程序下面用J表示,Qt端为一个程序用Q表示,ActiveMQ有两个队列 A,B;J负责将需要传递给Q的数据发送到A队列中并持续接收B队列,Q负责将需要传递的数据发送到B队列而持续接收A队列;由于ProtoBuf不包含其自身类型的描述,接收过来后无法反序列化,但是我们可以定义一个自描述协议消息,同时message中可以引用message,通过自描述中的参数获取类型进行区分,然后使用参数中的数据反序列化即可,具体原理如下图所示,暂时记录一下,后续完善~

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值