convertAndSend 方法的正确用法是什么?

What is the correct usage of convertAndSend method?

我想知道使用该方法的正确方法是什么 - "convertAndSend"。我查看了 AmqpTemplate class 中的方法签名。但是GitHub中的代码或者我找到的代码都不符合方法签名原型。 例如 -

这些是在代码中找到的 -

template.convertAndSend("Hello, world!");

但是方法签名是-

void convertAndSend(Object message) throws AmqpException

参数是对象消息,但找到的用例是字符串消息。

发现另一个用例 -

amqpTemplate.convertAndSend("tp.routingkey.1", "Message # " + messagCount++);

这里两个参数都是字符串。但是接近这个的方法签名 - void convertAndSend(String routingKey, Object message) throws AmqpException;

所以即使在这里,在用例中,也使用字符串消息而不是对象消息。

这将如何运作?这些用例正确吗? 请帮忙。

对象可以是任何类型,包括String。转换由 MessageConverter 执行。默认的 SimpleMessageConverter 可以处理 byte[]、String 或 javaSerializable。还有一个 json 转换器。

阅读文档。