• SpringMVC集成rabbitMQ


    Maven引入相关jar
    <dependency>
    <groupId>com.rabbitmq</groupId>
    <artifactId>amqp-client</artifactId>
    <version>3.2.4</version>
    <scope>compile</scope>
    </dependency>
    <dependency>
    <groupId>org.springframework.integration</groupId>
    <artifactId>spring-integration-amqp</artifactId>
    <version>2.1.3.RELEASE</version>
    </dependency>

    spring-mq.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:rabbit="http://www.springframework.org/schema/rabbit"
    xsi:schemaLocation="
    http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context.xsd
    http://www.springframework.org/schema/rabbit
    http://www.springframework.org/schema/rabbit/spring-rabbit-1.0.xsd">
    <context:property-placeholder location="classpath:jdbc.properties,classpath:config.properties" />
    <bean id="rabbitClientConnectionFactory" class="com.rabbitmq.client.ConnectionFactory">
    <property name="host" value="127.0.0.1"/>
    <property name="port" value="5672" />
    <property name="username" value="guest" />
    <property name="password" value="guest" />
    <!-- <property name="connectionTimeout" value="10000" /> -->
    </bean>
    <!-- 连接服务配置 -->
    <rabbit:connection-factory id="rabbitConnectionFactory" connection-factory="rabbitClientConnectionFactory"/>
    <rabbit:admin connection-factory="rabbitConnectionFactory" />
    <!-- queue 队列声明 -->
    <rabbit:queue id="jimmy-request-queue" durable="true" auto-delete="false" exclusive="false" name="jimmy-request-queue" />
    <!-- exchange queue binging key 绑定 -->
    <rabbit:direct-exchange name="jimmy-queue-exchange" durable="true" auto-delete="false" id="jimmy-queue-exchange">
    <rabbit:bindings>
    <rabbit:binding queue="jimmy-request-queue" key="jimmy-request-queue" />
    </rabbit:bindings>
    </rabbit:direct-exchange>

    <!-- spring template声明 -->
    <rabbit:template exchange="jimmy-queue-exchange" id="amqpTemplate" connection-factory="rabbitConnectionFactory" />
    <!-- queue litener 观察 监听模式 当有消息到达时会通知监听在对应的队列上的监听对象 -->
    <rabbit:listener-container connection-factory="rabbitConnectionFactory" acknowledge="auto" >
    <rabbit:listener queues="jimmy-request-queue" ref="foo" method="handleRequestMessage" />
    </rabbit:listener-container>

    </beans>

    生产者
    public void thrwosmq(){
    amqpTemplate.convertAndSend("jimmy-request-queue","ddd");
    System.out.println("asdf");
    }
    消费者

    public class Foo {  
    public void handleRequestMessage(String aaa) {
    System.out.println(aaa);
    }

    }




     
  • 相关阅读:
    电子产品使用感受之—我的iPad Pro坏了。。。
    我最近读了什么书?(随时更新)
    我了解到的新知识之--GDPR
    我了解到的新知识之—MPLS
    我了解到的新知识之—Apple Captive Portal 网页认证登陆公共Wifi
    电子产品使用感受之--无线充电器到底是不是鸡肋?
    大家春节好,过节了也不要忘记来听听我的播客节目哦!
    Python学习笔记之--我又开始学习Python了(随时更新)
    电子产品使用感受之--Mac Mini 买了之后有什么用?-- 开发啊!
    第一次个人编程作业
  • 原文地址:https://www.cnblogs.com/jimmy-muyuan/p/5697456.html
Copyright © 2020-2023  润新知