如何从 Amazon SQS 发送和接收 Java 对象

use*_*683 5 amazon-sqs

如何从 SQS 发送和接收 Java 对象?例如,我有一个 java 对象 Log。我将对象发送到消息队列

this.getSqs().sendMessage(new SendMessageRequest(myQueueUrl, log.toString());
Run Code Online (Sandbox Code Playgroud)

但是,在从队列中检索消息时,我希望能够检索它List<Log>并将其用作应用程序中的 java Log 对象。关于如何做到这一点的任何指示?

ada*_*amw 0

您必须将消息序列化为字符串,另外还要确保所有字符都在允许的字符范围内。

一种方法是使用 Java 序列化(尽管这不是最好的序列化方法,但通常有效),然后使用 Base64 等对结果进行编码。

有关示例,请参阅:SoftwareMill common QueueSoftwareMill common Util