2017-02-13 17 views
3

this guideに従うと、spring-rabbitとRabbitMQの使い方を学ぶことができます。ただし、このガイドでは、RabbitMQの設定はデフォルト(localhostサーバーと資格情報はguest/guest)として設定されています。 IPアドレスと資格情報を使用してリモートのRabbitMQに接続する場合、どうすればよいですか?私は自分のアプリケーションでこれらの情報をどこに設定するか分かりません。Spring-rabbitでRabbitMQ接続を設定するには?

答えて

7

このガイドのアプリケーションはSpringブートアプリケーションです。

application.propertiesからsrc/main/resourcesを追加してください。

あなたはその後、Spring Boot Documentationに応じRabbitMQのプロパティを設定することができます - 例えば

spring.rabbitmq.addresses= # Comma-separated list of addresses to which the client should connect. 

を使用し、クラスタに接続するには... RabbitMQのプロパティに

... 
spring.rabbitmq.host=localhost # RabbitMQ host. 
... 
spring.rabbitmq.password= # Login to authenticate against the broker. 
spring.rabbitmq.port=5672 # RabbitMQ port. 
... 
spring.rabbitmq.username= # Login user to authenticate to the broker. 
... 

を下にスクロールserver1:5672,server2:5672

ブート自動構成を使用しない場合は、CachingConnectionFactory@Beanをご自身で宣言し、必要に応じて設定してください。

+0

これは不思議です。あなたが提案したように、これらのプロパティを 'application.properties'に追加しました。ただし、これらのプロパティは実行中のアプリケーションにロードされていないようです。何か私が逃した? – kenshinji

+0

ガイドをダウンロードし、 'complete'バージョンの' src/main/resources'に 'application.properties'を追加し、それを遠隔rabbitmqインスタンスに向けました。うまくいきました。および出力メッセージ。どのようにガイドを実行していますか? –

+0

私の悪い、申し訳ありませんが、あなたのソリューションは魅力のように動作します。私の設定クラスに '@Bean MessageListenerAdapter listenerAdapter(Receiver receiver){return new MessageListenerAdapter(receiver、" receiveMessage ");}'を追加したのでここでは機能しませんでした。 – kenshinji

関連する問題