文档章节

Spring 配置RabbitMQ

y
 yan5845hao
发布于 2017/05/21 15:24
字数 630
阅读 23
收藏 0

需要使用的包

 <dependency>
     <groupId>org.springframework.amqp</groupId>
     <artifactId>spring-amqp</artifactId>
     <version>1.0.0.RELEASE</version>
</dependency>
<dependency>
       <groupId>org.springframework.amqp</groupId>
       <artifactId>spring-rabbit</artifactId>
       <version>1.0.0.RELEASE</version>
</dependency>

fanout交换器配置

    <!-- 连接rabbitmq-->
    <rabbit:connection-factory id="connectionFactory"
        host="10.211.55.8" port="5672"
        username="uwo" password="yan5845hao"
        virtual-host="/"/>
    
    <rabbit:admin connection-factory="connectionFactory"/>

    <!-- 声明队列-->
    <rabbit:queue name="uwo.rabbitMQ.test" durable="true" auto-delete="false" exclusive="false" />
    <!--Fanout: 不管消息的routing key和参数表的头信息/值是什么, 消息将会路由到该队列上。-->
    <rabbit:fanout-exchange name="uwo.fanout" durable="true" auto-delete="false">
        <rabbit:bindings>
            <rabbit:binding queue="uwo.rabbitMQ.test"/>
        </rabbit:bindings>
    </rabbit:fanout-exchange>

    <!--定义rabbit template用于数据的接收和发送-->
    <rabbit:template id="rabbitTemplate"  exchange="uwo.fanout" connection-factory="connectionFactory"/>

    <!-- 监听的队列-->
    <rabbit:listener-container connection-factory="connectionFactory" acknowledge="auto">
        <rabbit:listener ref="listen"  method="listen" queue-names="uwo.rabbitMQ.test" />
    </rabbit:listener-container>

    <!-- 监听器-->
    <bean id="listen" class="com.uwo.resources.ui.mq.QueueListener"/>

topic交换器配置

    <!-- 连接rabbitmq-->
    <rabbit:connection-factory id="connectionFactory"
        host="10.211.55.8" port="5672"
        username="uwo" password="yan5845hao"
        virtual-host="/"/>
    
    <rabbit:admin connection-factory="connectionFactory"/>

    <!-- 声明队列-->
    <rabbit:queue name="uwo.rabbitMQ.test" durable="true" auto-delete="false" exclusive="false" />
    <!--Fanout: 不管消息的routing key和参数表的头信息/值是什么, 消息将会路由到该队列上。-->
    <rabbit:topic-exchange name="uwo.topic" durable="true" auto-delete="false">
        <rabbit:bindings>
            <rabbit:binding queue="uwo.rabbitMQ.test" pattern="#.asm" />
            <rabbit:binding queue="uwo.rabbitMQ.test" pattern="#.aspectj" />
        </rabbit:bindings>
    </rabbit:topic-exchange>

    <!--定义rabbit template用于数据的接收和发送-->
    <rabbit:template id="rabbitTemplate"  exchange="uwo.topic" connection-factory="connectionFactory"/>

    <!-- 监听的队列-->
    <rabbit:listener-container connection-factory="connectionFactory" acknowledge="auto">
        <rabbit:listener ref="listen"  method="listen" queue-names="uwo.rabbitMQ.test" />
    </rabbit:listener-container>

    <!-- 监听器-->
    <bean id="listen" class="com.uwo.resources.ui.mq.QueueListener"/>

direct交换器配置

    <!-- 连接rabbitmq-->
    <rabbit:connection-factory id="connectionFactory"
        host="10.211.55.8" port="5672"
        username="uwo" password="yan5845hao"
        virtual-host="/"/>
    
    <rabbit:admin connection-factory="connectionFactory"/>

    <!-- 声明队列-->
    <rabbit:queue name="uwo.rabbitMQ.test" durable="true" auto-delete="false" exclusive="false" />
    <!--Fanout: 不管消息的routing key和参数表的头信息/值是什么, 消息将会路由到该队列上。-->
    <rabbit:direct-exchange name="uwo.direct" durable="true" auto-delete="false">
        <rabbit:bindings>
            <rabbit:binding queue="uwo.rabbitMQ.test" key="com.uwo.asm"></rabbit:binding>
            <rabbit:binding queue="uwo.rabbitMQ.test" key="com.uwo.aspectj"></rabbit:binding>
        </rabbit:bindings>
    </rabbit:direct-exchange>

    <!--定义rabbit template用于数据的接收和发送-->
    <rabbit:template id="rabbitTemplate"  exchange="uwo.direct" connection-factory="connectionFactory"/>

    <!-- 监听的队列-->
    <rabbit:listener-container connection-factory="connectionFactory" acknowledge="auto">
        <rabbit:listener ref="listen"  method="listen" queue-names="uwo.rabbitMQ.test" />
    </rabbit:listener-container>

    <!-- 监听器-->
    <bean id="listen" class="com.uwo.resources.ui.mq.QueueListener"/>

headers交换器配置

    <!-- 连接rabbitmq-->
    <rabbit:connection-factory id="connectionFactory"
        host="10.211.55.8" port="5672"
        username="uwo" password="yan5845hao"
        virtual-host="/"/>
    
    <rabbit:admin connection-factory="connectionFactory"/>

    <!-- 声明队列-->
    <rabbit:queue name="uwo.rabbitMQ.test" durable="true" auto-delete="false" exclusive="false" />
    <!--Fanout: 不管消息的routing key和参数表的头信息/值是什么, 消息将会路由到该队列上。-->
    <rabbit:headers-exchange name="uwo.headers" durable="true" auto-delete="false">
        <rabbit:bindings>
            <rabbit:binding queue="uwo.rabbitMQ.test" key="uwo" value="yanhao"></rabbit:binding>
            <rabbit:binding queue="uwo.rabbitMQ.test" key="YH" value="uwowu"></rabbit:binding>
        </rabbit:bindings>
    </rabbit:headers-exchange>

    <!--定义rabbit template用于数据的接收和发送-->
    <rabbit:template id="rabbitTemplate"  exchange="uwo.headers" connection-factory="connectionFactory"/>

    <!-- 监听的队列-->
    <rabbit:listener-container connection-factory="connectionFactory" acknowledge="auto">
        <rabbit:listener ref="listen"  method="listen" queue-names="uwo.rabbitMQ.test" />
    </rabbit:listener-container>

    <!-- 监听器-->
    <bean id="listen" class="com.uwo.resources.ui.mq.QueueListener"/>

© 著作权归作者所有

共有 人打赏支持
下一篇: java RabbitMQ
y
粉丝 7
博文 123
码字总数 21918
作品 0
扬州
程序员
私信 提问
阿里云Kubernetes SpringCloud 实践进行时(2): 分布式配置管理

简介 为了更好地支撑日益增长的庞大业务量,我们常常需要把服务进行整合、拆分,使我们的服务不仅能通过集群部署抵挡流量的冲击,又能根据业务在其上进行灵活的扩展。随着分布式的普及、服务...

osswangxining
05/25
0
0
RabbitMQ 入门 与 RabbitMQ 在 Spring Boot 中的使用

Message Broker与AMQP简介 Message Broker是一种消息验证、传输、路由的架构模式,其设计目标主要应用于下面这些场景: 消息路由到一个或多个目的地 消息转化为其他的表现方式 执行消息的聚集...

Anur
09/13
0
0
RabbitMQ 实战教程 文集

RabbitMQ 实战教程 文集 此系列博客经梁总(梁桂钊的博客)授权录入本站点,下面推荐下梁总的技术公众号【服务端的思维】,公众号不定时更新技术文章,干货满满!! RabbitMQ 实战教程(一) He...

chenssy
10/06
0
0
SSM框架下配置rabbitMQ

一、准备工作: 第一步:下载erlang http://www.erlang.org/downloads/19.3 第二步:下载rabbitMQ http://www.rabbitmq.com/download.html rabbitMQ安装完成后,打开rabbitMQ控制台 输入:r...

嘴角轻扬30
前天
0
0
RabbitMQ学习以及与Spring的集成(三)

本文介绍RabbitMQ与Spring的简单集成以及消息的发送和接收。 在RabbitMQ的Spring配置文件中,首先需要增加命名空间。 xmlns:rabbit="http://www.springframework.org/schema/rabbit" 其次是模...

onedotdot
06/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Vue- 对象语法 v-bind:class与对象语法的使用

我们可以传给 v-bind:class 一个对象,以动态地切换 class 。 <div v-bind:class="{ active: isActive }"></div>//对象语法也就是在v-bind:class绑定一个对象的时候,里面的值将影响最终取值...

文文1
24分钟前
1
0
epoll中使用

1、一个线程epoll_wait时,另一个线程调用epoll_ctl是安全的。 2、使用edge触发,在socket有数据到来后,不收取数据,再次调用epoll_ctl将socket加入,仍会触发下一次动作。 asio用该方法来发...

gelare
52分钟前
1
0
PHP规范PSR2

PSR标准 - PSR-2 为了尽可能的提升阅读其他人代码时的效率,下面例举了一系列的通用规则,特别是有关于PHP代码风格的。 各个成员项目间的共性组成了这组代码规范。当开发者们在多个项目中合作...

geek土拨鼠
今天
5
0
【极简】如何在服务器上安装SSL证书?

本文适合任何人了解,图形化操作。下面以腾讯云为例,并且服务器(linux)也安装了宝塔面板。 1.登陆腾讯云账号进入控制台,找到SSL的产品 2.按要求申请并填写表单,记住私钥密码 3.提交后,待...

皇冠小丑
今天
1
0
深入理解编译器

深入理解编译器 原文出处 欢迎向Rust中文社区投稿,投稿地址,好文将在以下地方直接展示 1 Rust中文社区首页 2 Rust中文社区Rust文章栏目 3 知乎专栏Rust语言 编程语言是如何工作的 从内部理解...

krircc
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部