在使用rocketmq时生产者发送消息,消息是一个对象
消费者消费到的时候对象内容为空
//在把接受到的对象发送时,对象属性都有
@RequestMapping("message")
public void sendMessage(@RequestBody ProducerEntity producerEntity) {
Message message = new Message("my-topic",JSON.toJSONString(producerEntity).getBytes());
rocketMQTemplate.syncSend("my-topic:tag1",message);
}
@Component
@RocketMQMessageListener(topic = "my-topic",consumerGroup = "my-group",selectorExpression = "tag1")
public class Consumer implements RocketMQListener<ProducerEntity>{
@Autowired
SystemConsumerFeign systemConsumerFeign;
@Override
public void onMessage(ProducerEntity producerEntity) {
//消费者消费时对象内容为空
systemConsumerFeign.sendMessage(producerEntity);
}
}
后来在生产者使用了
rocketMQTemplate.convertAndSend("my-topic:tag1",producerEntity);
就可以了,应该是这个方法发送的是实体,而上边的方法为字节,所以接收不到