<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                [TOC] # 簡介 **模式匹配** * `* `表示?個詞; * `#`表示零個或多個詞 # 創建隊列 Topic 是 RabbitMQ 中最靈活的?種?式,可以根據 routing\_key ?由的綁定不同的隊列。 ?先對 Topic 規則配置,這?使?兩個隊列來測試: ~~~ import org.springframework.amqp.core.Binding; import org.springframework.amqp.core.BindingBuilder; import org.springframework.amqp.core.Queue; import org.springframework.amqp.core.TopicExchange; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class RabbitConfig { final static String message = "topic.message"; final static String messages = "topic.messages"; /** * 定義隊列 */ @Bean public Queue queueMessage() { return new Queue(RabbitConfig.message); } @Bean public Queue queueMessages() { return new Queue(RabbitConfig.messages); } /** * 交換機 */ @Bean public TopicExchange exchange() { return new TopicExchange("topicExchange"); } /** * 將隊列和交換機綁定 */ @Bean public Binding bindingExchangeMessage(Queue queueMessage, TopicExchange exchange) { //queueMessage 只匹配“topic.message”隊列 return BindingBuilder.bind(queueMessage).to(exchange).with("topic.message"); } @Bean public Binding bindingExchangeMessages(Queue queueMessages, TopicExchange exchange) { //設計 queueMessages 同時匹配兩個隊列 return BindingBuilder.bind(queueMessages).to(exchange).with("topic.#"); } } ~~~ # 發送者 ~~~ import org.springframework.amqp.core.AmqpTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.Date; @Component public class TopicSender { @Autowired private AmqpTemplate rabbitTemplate; public void send1() { String context = "hi, i am message 1"; System.out.println("Sender : " + context); this.rabbitTemplate.convertAndSend("topicExchange", "topic.message", context); } public void send2() { String context = "hi, i am messages 2"; System.out.println("Sender : " + context); this.rabbitTemplate.convertAndSend("topicExchange", "topic.messages", context); } } ~~~ # 接收者 **接收者1** ~~~ import org.springframework.amqp.rabbit.annotation.RabbitHandler; import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.stereotype.Component; @Component @RabbitListener(queues = "topic.message") public class TopicReceiver { @RabbitHandler public void process(String message) { System.out.println("Topic Receiver1 : " + message); } } ~~~ **接收者2** ~~~ import org.springframework.amqp.rabbit.annotation.RabbitHandler; import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.stereotype.Component; @Component @RabbitListener(queues = "topic.messages") public class TopicReceiver2 { @RabbitHandler public void process(String message) { System.out.println("Topic Receiver2 : " + message); } } ~~~ # 測試 發送 send1 會匹配到 `topic.#` 和 topic.message 兩個 Receiver 都可以收到消息 發送 send2 只有 `topic.#` 可 以匹配,Receiver2 監聽到了消息 ~~~ @Autowired private TopicSender sender; @Test public void topic1() throws Exception { sender.send1(); Thread.sleep(1000L); } @Test public void topic2() throws Exception { sender.send2(); Thread.sleep(1000L); } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看