问题描述
我是Spring AMQP的新手。我想通过自定义消息使用sendAndReceive()。
public void send (String exchange,String routingKey,MyCustomMessage message){
CorrelationData correlationData = new CorrelationData("correlation-data");
rabbitTemplate.sendAndReceive(exchange,routingKey,message,correlationData);
}
使'MyCustomMessage'扩展org.springframework.amqp.core.Message'
扩展消息是使用CustomMessage的唯一方法吗? 使用convertAndSend函数时,我没有扩展。
解决方法
否;只要它与模板中的MessageConverter
兼容(默认SimpleMessageConverter
可以处理Serializable
,或者您可以将Jackson2JsonMessageConverter
用于JSON友好类,或者您可以使用自定义消息转换器)。
然后,使用template.convertSendAndReceive(...)
代替sendAndReceive
。