2
我想使用Spring AMQP發送和使用下面的自定義對象。如何在Spring AMQP中發送&使用對象?
生產者代碼
記錄記錄=新記錄( 「MESSAGE1」,新的日期());
rabbitTemplate.convertAndSend(record);
任何人都可以提供spring amqp @configuration設置來發送和使用消息,如上所述。謝謝!!!
我想使用Spring AMQP發送和使用下面的自定義對象。如何在Spring AMQP中發送&使用對象?
生產者代碼
記錄記錄=新記錄( 「MESSAGE1」,新的日期());
rabbitTemplate.convertAndSend(record);
任何人都可以提供spring amqp @configuration設置來發送和使用消息,如上所述。謝謝!!!
你應該看看Sample Applications;其中一些使用@Configuration
。
但是,本質上,你需要...
@Bean
public SimpleMessageListenerContainer container() {
SimpleMessageListenerContainer container =
new SimpleMessageListenerContainer(connectionFactory());
MessageListenerAdapter adapter = new MessageListenerAdapter(myListener());
container.setMessageListener(adapter);
container.setQueues(foo());
return container;
}
@Bean
public Object myListener() {
return new Foo();
}
和聽衆可以是一個POJO ...
public class Foo {
public void handleMessage(Record foo) {
System.out.println(foo);
}
}
編輯:
I added a Gist here的XML版本。
謝謝羅素,能夠消耗對象。\ – Pand005
我很想看到一個使用XML配置的例子。我有一切工作,可以發送/接收字符串,但不是對象。 我可以發送對象,但它們永遠不會被應用程序接收。 Rabbit MQs CPU在發送1條消息後跳至100%,並保持100%,直到我放棄隊列,所以它有點卡住了。 – Wouter
請參閱[XML版本的要點](https://gist.github.com/garyrussell/c86d22f6e00a526aec37) –