配置spring-rabbit队列地址可在运行时更改

时间:2016-05-17 17:55:30

标签: java spring rabbitmq message-queue

这是一个侦听RabbitMQ队列的Web应用程序。一切正常,但是在spring xml config中硬编码队列的主机地址(127.0.0.1)是不可接受的。

如何从外部注册表中动态配置主机?

主机地址可能会在应用期限内发生变化。我更喜欢如果spring每次需要时都会为队列地址询问一些自定义的写入方法。

<rabbit:queue id="myQueue" />
<rabbit:topic-exchange id="myExchange" name="my-exchange">
    <rabbit:bindings>
        <rabbit:binding queue="myQueue" pattern="my.#.*">
        </rabbit:binding>
    </rabbit:bindings>
</rabbit:topic-exchange>
<rabbit:connection-factory id="connectionFactory" host="127.0.0.1" username="test" password="test" />
<bean id="queListener" class="my.QueListener" />
<rabbit:listener-container id="myListenerContainer" connection-factory="connectionFactory">
    <rabbit:listener ref="queListener" queues="myQueue" />
</rabbit:listener-container>

春季4.1, 春天的JMS, 弹簧兔:1.5, jboss 6.4 eap

1 个答案:

答案 0 :(得分:0)

这是我的解决方案。可能它有一些问题,但基本上它可以工作。

<div class="accordion-menu">
  <ul class="" role="tabpanel">
    <li class="nav active">
      <a class="menu" data-toggle="tooltip" data-placement="bottom" title="home">
        <i class="fa fa-bars fa-2x" aria-hidden="true"></i>
      </a>
    </li>
    <li class="nav"><a class=""><i class="fa fa-search fa-2x" aria-hidden="true"></i></a>
    </li>

  </ul>
</div>